使QPushButton背景恒定

时间:2019-03-21 16:48:44

标签: qt qtstylesheets qpushbutton

我使用C ++ / Qt 5.12,Windows 7 OS,Visual Studio2017。

我希望可检查的QPushButton背景忽略已检查/按下的状态。我希望在QPushButton实例中具有默认背景,但是如果用户选中了按钮,则仅字体颜色应该更改。我怎样才能达到这种效果?

1 个答案:

答案 0 :(得分:0)

您可以使用QSS(具有Qt风格的CSS)来自定义QWidget: https://doc.qt.io/qt-5/stylesheet-syntax.html

我建议创建一个在启动时加载的应用程序范围的QSS,并使用QApplication::setStyleSheet(...)。但是您可以使用Qt Designer(在特定控件上单击鼠标右键)或纯C ++

myButton->setStyleSheet("QPushButton { background: yellow; }");

您可能需要重新定义border才能在视觉上应用它,然后重新定义margins以具有正确的按钮大小,但这非常简单。尝试从Qt Designer进行实验。

您可以在此处找到所有选择器和属性的全面参考:https://doc.qt.io/qt-5/stylesheet-reference.html