QPushbutton如何删除由setDefault(True)创建的颜色



我目前正在尝试在Qt中自定义我的QPushButton(实际上是PyQt)。所以我设置StyleSheet来做这件事。

但问题是,我需要通过将Default设置为True来将此按钮设置为Default。

如果我那样做,我会流口水。。。我怎样才能摆脱它?

这里有一个例子:

button = QPushButton('login')
button.setDefault(True)
button.setObjectName('login')
button.setStyleSheet(
"""
QPushButton#login {
background-color: #4caf50;
color: white;
border: none;
}
QPushButton:pressed#login {
background-color: #59b75c;
}
"""
)

按钮显示为绿色,但文本不是完全白色。。。我试着在QPushButton:default上设置样式表,但它根本不会改变

我可以看到您的代码中有一个小错误。你给了我们

QPushButton:pressed#login {
background-color: #59b75c;
}

但这并不奏效。

正确的方法是

QPushButton#login:pressed {
background-color: #59b75c;
}

此外,请确保在"#"之后使用pushButton的objectName,而不是按钮的文本。

以下是一些样式表示例的链接

在互联网上搜索了很长时间,我终于找到了该怎么做。我必须将outline设置为none才能删除它。

QPushButton#login {
background-color: #4caf50;
color: white;
outline: none;
}

然后流眼泪的颜色消失了。

相关内容

最新更新