PyQt - 如果QLineEdit没有文本,则更改它的颜色

时间:2017-09-06 18:18:35

标签: python pyqt

是否可以更改QLineEdit背景颜色,具体取决于它是否仅使用其样式表在其中写入文本?

当然,这可以使用Python代码完成,但我想知道是否可以使用css属性来完成。

我的理想情景:

CSS

QLineEdit {
    background-color: white;
}

QLineEdit:no-text-inside-it {
    background-color: red;
}

快速注释 - 根据此SO帖子的回答:Changing the Color of QLineEdit's Placeholder Text,无法直接修改占位符,因此看起来QLineEdit可能没有此级别的功能。但是我知道在Qt 4.7中对占位符进行了一些调整,所以可能是一种方式,现在

那就是说,有人知道我在寻找什么是可能的吗?

1 个答案:

答案 0 :(得分:2)

尝试这个(在PyQt5中工作,也应该在PyQt4中工作):

QLineEdit
{
    background-color: black;
}

QLineEdit[text=""]
{
    background-color: red;
}