如何使用QSS为禁用按钮设置不同的背景颜色?

时间:2014-08-05 13:07:04

标签: c++ qt qt5 qtstylesheets qt5.3

我已尝试使用disabled!enabled,但它不起作用。 这是我的QSS代码:

QPushButton {
    background-color:#44c767;
    border-radius:5px;
    border:1px solid #18ab29;
    color:#ffffff;
    font-family:arial;
    font-size:15px;
    font-weight:bold;
    text-decoration:none;
    padding-right:10px;
    outline: 0;
}

QPushButton:hover:!pressed {
    background-color:#54d777;
}

QPushButton: pressed {
    background-color:#30b252;
}

QPushButton: disabled {
    background-color:#ff0000;
}

QPushButton: !enabled {
    background-color:#ff0000;
}

文档引用disabled伪状态但未提供有关它的更多信息。

修改

我正在使用QT5.3

1 个答案:

答案 0 :(得分:6)

删除冒号后的所有空格(实际上是全部 - 因为它使进一步的css文本无效)并且它将起作用:

QPushButton:disabled {
background-color:#ff0000;
}

实际上,disabled!enabled都有效。