我使用垂直布局(QVBoxLayout)来管理按钮。我想将其背景颜色设为50%黑色透明。有可能吗?
SW
答案 0 :(得分:4)
根据您想要透明区域边框的位置,您需要将小部件中的按钮分组(如SigTerm所说),然后您可以通过调色板指定颜色
QPalette palette = widget->palette();
palette.setColor(QPalette::Window, QColor(100,100,100,100));
widget->setPalette(palette);
或使用样式表
widget->setStylesheet("QWidget{background-color: rgba(100,100,100,100);}";
样式表的优势在于,您可以从代码中不存在的一个位置设置所有应用程序的样式,并通过QApplication::setStylesheet(QString)
答案 1 :(得分:2)
如果您想创建彩色布局,您可能需要创建一个具有您想要的任何颜色的窗口小部件,然后将父QVBoxLayout创建到该窗口小部件。
如果你想让所有布局的孩子的颜色受QVBoxLayout父母的颜色影响会变得更有趣,但我认为来自Qt4演示的“嵌入式对话”演示可能会让你知道如何做到这一点。