我正在使用Qt 5.3.0。当我在QPushButton的检查状态下应用一些背景颜色时,按钮将在检查时用灰色点(我想要的背景颜色)填充。
这是一个很小的测试程序(使用qtcreator,但它也可以通过编码完成): 1,创建一个qt应用程序 2,拖入QPushButton,将其设置为平坦且可检查 3,在w.show()
之前添加这些行w.setStyleSheet("\
QPushButton { \
color:white; \
} \
QPushButton:checked{\
background-color: rgb(80, 80, 80);\
}\
QPushButton:hover{ \
background-color: grey; \
border-style: outset; \
} \
");
4,运行应用程序并检查按钮
您会看到按钮变为虚线但我需要选中的按钮为纯色,如rgb(80,80,80)。 我错过了什么吗?
答案 0 :(得分:15)
我只需在样式表的border: none;
属性上设置QPushButton:checked
即可删除这些点。
在你的例子中,它应该是这样的:
w.setStyleSheet("\
QPushButton { \
color:white; \
} \
QPushButton:checked{\
background-color: rgb(80, 80, 80);\
border: none; \
}\
QPushButton:hover{ \
background-color: grey; \
border-style: outset; \
} \
");
在这里,您可以在选中按钮时看到结果: