好吧,我再次尝试使用Qt Creator上的Linux GUI应用程序,我在项目的Qt资源文件中添加了几个图像。我试图在我的主窗口和其他窗口和对话框中有一个很好的背景。我使用的是样式表选项(无编码)。
我无法设置标签和按钮的透明度级别。关于如何从Qt创建者GUI本身做到这一点的任何想法???
!I am attaching a snap of how my application looks.
答案 0 :(得分:8)
您可以通过设置样式表来设置QLabel或QPushbutton的透明度:
ui->label->setStyleSheet("background-color: rgba(255, 255, 255, 0);");
ui->button->setStyleSheet("background-color: rgba(255, 255, 255, 0);");
您还可以将background-color: rgba(255, 255, 255, 0);
添加到设计器中窗口小部件的styleSheet属性中。
第四个参数是alpha。通过将alpha设置为大于零的某个值,您还可以拥有半透明小部件:
ui->button->setStyleSheet("background-color: rgba(255, 255, 255, 50);");
答案 1 :(得分:5)
ui元素属性的QWidget
部分中有属性“Window opacity”(qtDesigner视图的右下角)。默认情况下,它是1.0
(完全不透明)。
答案 2 :(得分:1)
这对我有用:
this->setWindowOpacity(0.35);
this->setAttribute(Qt::WA_TranslucentBackground, false);
this->setStyleSheet("background-color: yellow;");
答案 3 :(得分:0)
不是来自GUI,但对某人仍然有用:
auto effect = new QGraphicsOpacityEffect(this);
effect->setOpacity(0.5);
yourWidget->setGraphicsEffect(effect);
yourWidget->setAutoFillBackground(true);
从here被盗。