Qt子窗口设置背景色只能应用到其中的部件的问题

时间:2023-03-10 06:51:05
Qt子窗口设置背景色只能应用到其中的部件的问题

问题描述:
设置父窗口后子窗口会嵌在父窗口中,背景变透明,此时用qss设置子窗口的背景色发现只应用到的子窗口的控件中,除控件外的地方并没有应用到背景色。

解决方法:
不使用qss设置背景色,重写paintEvent事件,填充整个区域。

代码如下

void Xx::paintEvent(QPaintEvent* event){
QPainter painter(this);
painter.fillRect(rect(),QColor(255,0,0,50));
}

原文来自微信公众号"程序员成长日志",已经工作的程序员朋友可以关注下公众号“程序员成长日志”,分享日常工作中解决的问题即可赚取稿费,大家一起成长~
Qt子窗口设置背景色只能应用到其中的部件的问题