QT:给Widget设置背景图片——设置Widget的调色板,调色板使用图片和背景色
2015-11-25 08:20
323 查看
QT:给Widget设置背景图片
1 /* 2 * set background image 3 */ 4 QPixmap bgImages(":/images/bg.png"); 5 QPalette bgPalette = this->palette(); 6 bgPalette.setBrush(QPalette::Background,bgImages); 7 this->setPalette(bgPalette); 8 9 setMask(bgImages.mask());// set background mask attribute same as background's image
先上代码,这里作说明。
1)将该段代码放在需要设置背景图片的构造函数中 2)需要包含头文件 #include <QPixmap> #include <QPalette> #include <QBitmap> 3)逻辑: 首先构造一个QPixmap对象,可以认为是一个位图。 然后将该Widget的调色板palette取出来放在bgPalette里面 修改调色板,用Brush将我们刚才创建的图片刷到调色板上去 最后重置Widget的调色板
4)注意: 如果背景图片是png等含有透明部分的图片,还要用setMask()函数将背景的掩码设置成和图片一样的,方可显示透明色。
/article/5146582.html
相关文章推荐
- QT进度条
- 可以供MFC调用的,QT实现的DLL(qtwinmigrate实现)
- QT:轻松获取网页源码
- QT:程序忙碌时的进度条——开启时间循环,等结束的时候再退出
- QT:“下载速度柱状图”的模拟实现——思路真好,会动脑筋,连我都有了启发(这个思路好像是通用的)
- 无法关闭的QT程序——思路开阔一下,原来这么简单!
- QT:窗口最小化时显示一个小浮标
- QT:浮动的饼状统计图(自绘不规则窗口)
- 在QTableView中使用各种自定义委托
- QT:使用“状态模式”绘制界面
- Qt中如何 编写插件 加载插件 卸载插件
- QT:用QSet储存自定义结构体的问题——QSet和STL的set是有本质区别的,QSet是基于哈希算法的,要求提供自定义==和qHash函数
- 把自定义控件集成到Qt Designer中
- Qt-4.6动画Animation快速入门三字决
- Qt学习之路(27): 渐变填充
- QT 学习记录:渐变-QLinearGradient,QRadialGradient,QConicalGradient)
- Qt 学习之路 2(27):渐变
- Qt 学习之路 2(29):绘制设备
- 坐标系统 Qt 学习之路 2(28):坐标系统
- Qt之对话框设计——利用QPalette改变控件颜色