在Qt中正确的设置窗体的背景图片的几种方法总结


Posted in Python onJune 19, 2019

Qt中正确的设置窗体的背景图片的方法大致有两种,下面将逐个讲解:

一. 利用styleSheet设置窗体的背景图片

使用stylesheet设置窗体的背景图片的时候,可以直接按照下图的操作去进行即可,如下图所示:

但是,需要注意的是:

1.在QWidget中这种方法是不行的,如果你足够细心的话,你会发现使用同样的设置背景图片的方法,背景图片其实并没有发生真实改变,但是它的子窗体背景图片是会发生改变的。

其实我们可以通过在添加一个i额QWidget来解决这个问题,即在QtDesigner中添加一个Frame窗口,我们只需对这个新添加的Frame窗口来进行styleSheet的字符串值即可,新添加的所有子控件都添加到这个新的Frame窗口里。

2. 做过Qt开发的朋友应该都知道,Qt的子窗体是会继承父窗体的属性的,这就证明了为什么父窗体的背景在子窗体中也会有,这个是对这个原因的一个非常合理的解释。那么问题来了,我们怎么才能做到子窗体不继承父窗体的背景呢?

既然上面分析到了原因,那么我们就知道如何解决了,仍然打开styleSheet代码编辑界面,我们只需要将下面的几行代码输入进去即可解决这个问题,具体代码如下所示:

#窗体名称 { 
border-image: url(:/HouseRentSystem/Resources/test.png); 
} 
#窗体名称 * { 
border-image:url(); 
}

二. 通过纯代码方式实现:

QWidget *widget = new QWidget();
  widget->setAutoFillBackground(true);
  QPalette palette;
  QPixmap pixmap(":/HouseRentSystem/Resources/test.png");
  palette.setBrush(QPalette::Window, QBrush(pixmap));
  widget->setPalette(palette);
  widget->show();

如果你对styleSheet比较熟悉,我个人还是建议你在在QtDesigner中直接进行编辑,这样将会省去你很多工作量,至少将少了程序中完全没必要添加的冗余代码。

以上这篇在Qt中正确的设置窗体的背景图片的几种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
提升Python程序运行效率的6个方法
Mar 31 Python
详解python中的json的基本使用方法
Dec 21 Python
Python使用matplotlib的pie函数绘制饼状图功能示例
Jan 08 Python
python pandas 如何替换某列的一个值
Jun 09 Python
Python中实现单例模式的n种方式和原理
Nov 14 Python
Python3.5 Pandas模块缺失值处理和层次索引实例详解
Apr 23 Python
Python基于yield遍历多个可迭代对象
Mar 12 Python
python+selenium+Chrome options参数的使用
Mar 18 Python
Python字符串格式化常用手段及注意事项
Jun 17 Python
python右对齐的实例方法
Jul 05 Python
Python编写万花尺图案实例
Jan 03 Python
Python中使用ipython的详细教程
Jun 22 Python
梅尔倒谱系数(MFCC)实现
Jun 19 #Python
python 中的列表生成式、生成器表达式、模块导入
Jun 19 #Python
PyQt5 QTable插入图片并动态更新的实例
Jun 18 #Python
pyqt5 禁止窗口最大化和禁止窗口拉伸的方法
Jun 18 #Python
PyQt5 对图片进行缩放的实例
Jun 18 #Python
梅尔频率倒谱系数(mfcc)及Python实现
Jun 18 #Python
Python生成一个迭代器的实操方法
Jun 18 #Python
You might like
url decode problem 解决方法
2011/12/26 PHP
PHP的加密方式及原理
2012/06/14 PHP
php加速器eAccelerator的配置参数、API详解
2014/05/05 PHP
php中smarty实现多模版网站的方法
2015/06/11 PHP
CI配置多数据库访问的方法
2016/03/28 PHP
Laravel路由设定和子路由设定实例分析
2016/03/30 PHP
PHP面向对象程序设计模拟一般面向对象语言中的方法重载(overload)示例
2019/06/13 PHP
用javascript实现自定义标签
2007/05/08 Javascript
基于Asp.net与Javascript控制的日期控件
2010/05/22 Javascript
html中table数据排序的js代码
2011/08/09 Javascript
jQuery 隐藏和显示 input 默认值示例
2014/06/03 Javascript
javascript 获取HTML DOM父、子、临近节点
2014/06/16 Javascript
JavaScript中的迭代器和生成器详解
2014/10/29 Javascript
nodejs中的fiber(纤程)库详解
2015/03/24 NodeJs
jQuery监控文本框事件并作相应处理的方法
2015/04/16 Javascript
jQuery 1.9.1源码分析系列(十五)动画处理之缓动动画核心Tween
2015/12/03 Javascript
如何用angularjs制作一个完整的表格
2016/01/21 Javascript
Node.js包管理器Yarn的入门介绍与安装
2016/10/17 Javascript
真正好用的js验证上传文件大小的简单方法
2016/10/27 Javascript
HTML5 JS压缩图片并获取图片BASE64编码上传
2020/11/16 Javascript
canvas绘制多边形
2017/02/24 Javascript
Vue集成Iframe页面的方法示例
2017/12/12 Javascript
Vue.js+Layer表格数据绑定与实现更新的实例
2018/03/07 Javascript
js实现导航跟随效果
2018/11/17 Javascript
Vue.js实现开发购物车功能的方法详解
2019/02/22 Javascript
如何在selenium中使用js实现定位
2020/08/18 Javascript
python 读取更新中的log 或其它文本方式
2019/12/24 Python
基于python实现数组格式参数加密计算
2020/04/21 Python
使用OpenCV校准鱼眼镜头的方法
2020/11/26 Python
详解CSS3 弹性布局快速入门
2019/06/06 HTML / CSS
Ralph Lauren法国官网:美国高品味时装品牌
2017/12/08 全球购物
迪奥美国官网:Dior美国
2019/12/07 全球购物
新郎父亲婚宴答谢词
2014/01/11 职场文书
安全保卫工作竞聘材料
2014/08/25 职场文书
党员干部反四风民主生活会对照检查材料思想汇报
2014/10/12 职场文书
办公室个人总结
2015/02/28 职场文书