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

8
我已经尝试使用 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个回答

16

去除冒号后面的所有空格(真的是全部都要去掉,因为这样才不会使CSS文本无效),这样它就能正常工作:

去除冒号后面的所有空格(真的是全部都要去掉,因为这样才不会使CSS文本无效),这样它就能正常工作:

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

实际上,使用 disabled!enabled 都可以起到相同的作用。


2
非常感谢!这太愚蠢了!最糟糕的是,样式表编辑器底部的小帮助框告诉我QSS代码是有效的... - Jan Moritz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接