QT中几种设置控件的图片背景的方法

本文总结了在QT中为控件设置图片背景的三种方法:1) 使用QPalette和QBrush;2) 通过QSS样式表;3) 对于QLabel,利用setPixmap方法。在使用QPalette时,需要设置autoFillBackground为true以避免黑屏问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

QT中几种设置控件的图片背景的方法

杯具了,知道今天才发现有不少种可以加载图片的方法。

 

下面简单总结下:

 

1 MLCNWidget *w=new MLCNWidget;

w->setAutoFillBackground(true);

QPalette palette;

palette.setBrush(w->backgroundRole(), QBrush(QPixmap("./pic/new_images/bg.jpg")));

w->setPalette(palette);

w->showFullScreen();

 

2 使用QSS

 

控件->setStyleSheet("background-image:url(./pic/new_images/start_jiankong.png)");

 

这样做的一个缺点是一旦在一个控件中使用StyleSheet了,其中的子控件就全部会继承,也就是在上面显示主控件的背景了。在网上看到可以通过*{}的方式防止继承,但我试了下,没成功,不知道到底行不行。

 

3 关于label上加图片的

 

估计除了widget,加的最多的就是QButton和QLabel了,QLabel里面看QT文档可以发现有个槽,setPixmap,用了下,特别好用。

 

ui.label_5->setPixmap(QPixmap("./pic/new_images/start_jiankong.png"));

 

唉,以前咋没发现这个好方法呢?

 

不过还好,现在知道了。

 

学习就是多发现,多摸索,多总结的过程。

&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值