我在我的按钮pushButton样式表中使用了这个
QPushButton#pushButton {
background-color: yellow;
}
QPushButton#pushButton:pressed {
background-color: rgb(224, 0, 0);
}
QPushButton#pushButton:hover {
background-color: rgb(224, 255, 0);
}
当我将鼠标悬停在它上面时,它会改变颜色,就像我期望的那样,但是当我按下按钮时,悬停颜色仍然存在。 我尝试改变顺序,但它仍然是同样的问题。 Qt中的新鲜事。
答案 0 :(得分:29)
答案 1 :(得分:2)
Css和Qt CSS取决于声明的顺序。具有相同特异性的后期声明将覆盖先前的声明。因此,为了使pressed
状态优先,只需将其移至hover
状态以下。
QPushButton#pushButton {
background-color: yellow;
}
QPushButton#pushButton:hover {
background-color: rgb(224, 255, 0);
}
QPushButton#pushButton:pressed {
background-color: rgb(224, 0, 0);
}
答案 2 :(得分:-2)
您可以在QPushButton中设置图像:
QPushButton#pushButton {
background-url(Images/image1.png);
}
QPushButton#pushButton:pressed {
background-url(Images/image2.png);
}
QPushButton#pushButton:hover {
background-url(Images/image3.png);
}