Qt中为QWidget设置背景图片的方法
2013-08-06 16:58
387 查看
有时候我们为QWidget设置背景图片时,在Qt designer中设置背景图片,可以看到自己设置的背景图片,但是一运行就不显示,下面有两种方法可以解决这个问题
为QWidget添加背景图的方法
第一种:
QImage image1;
QPalette palette;
image1.load("./back.png");
//QImage image2 = image1.scaled(1024,768);
palette.setBrush(this->backgroundRole(),QBrush(image1));
this->setPalette(palette);照着搞 就ok!在构造函数中加上就行了
第二种:
要想QWidget可以显示背景图片,需要重新实现paintEvent()函数:
void Widget::paintEvent(QPaintEvent *)
{
QStyleOption opt;
opt.init(this);
QPainter p(this);
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}
为QWidget添加背景图的方法
第一种:
QImage image1;
QPalette palette;
image1.load("./back.png");
//QImage image2 = image1.scaled(1024,768);
palette.setBrush(this->backgroundRole(),QBrush(image1));
this->setPalette(palette);照着搞 就ok!在构造函数中加上就行了
第二种:
要想QWidget可以显示背景图片,需要重新实现paintEvent()函数:
void Widget::paintEvent(QPaintEvent *)
{
QStyleOption opt;
opt.init(this);
QPainter p(this);
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this);
}
相关文章推荐
- QT中几种设置控件的图片背景的方法
- QT中关于QWidget的背景颜色和背景图片的设置
- qt中关于QWidget的背景颜色和背景图片的设置
- QT中几种设置控件的图片背景的方法
- QT5.2 + VS2012 给QWidget 对象使用setStyleSheet()设置背景图片运行不显示的问题
- qt中关于QWidget的背景颜色和背景图片的设置
- Qt添加背景图片而不影响其控件的不用代码的设置方法
- Qt中几种设置控件的图片背景的方法
- Qt 中关于QWidget的背景颜色和背景图片的设置
- Qt/C++ 设置背景图片3种方法
- Qt 设置背景图片3种方法(三种方法:QPalette调色板,paintEvent,QSS)
- qt中关于QWidget的背景颜色和背景图片的设置
- QT中关于QWidget的背景颜色和背景图片的设置
- Qt常见设置背景图片的几种方法总结
- QT界面,按钮,Label背景图片设置方法
- 关于 QWidget无法使用stylesheet设置自身backgound-color(背景色)和border-image(背景图片) 的解决方法
- 设置QT控件背景图片方法总结
- qt中常用的一种设置背景图片方法
- [Qt笔记]:QWidget设置背景图片
- QT中几种设置控件的图片背景的方法