2013-05-06 138 views
0

我有一个按钮,它的背景图像会根据ui从串行接收到的数据包定期更改。当用户点击按钮时,它会变成带边框的红色。QPushButton焦点

pb_Jack1Up ->setStyleSheet("QPushButton {border-image: url(:/ArrowKey/Up_Default.jpg); } QPushButton:focus {border-width: 1px;border-style: solid; border-radius: 4px;}"); 

现在,我想要的是给按钮一些效果,让用户明白按钮被点击。如点击时让按钮进入内部,当用户释放按钮边框时不再设置。但是,在我的情况下,按钮边框仍然存在。我也无法将样式表设置为按下并释放的插槽,因为背景图像取决于我们从串行接收的内容。

任何人都可以帮助我吗?

+0

什么QPushButton:按下转而关注? – Trompa 2013-05-06 07:45:43

回答

1

您可以使用:

QPushButton   { ... } 
QPushButton:disabled { ... } 
QPushButton:pressed { ... } 
QPushButton:focus { ... } 
QPushButton:hover { ... } 

或看看this博客条目。

1

释放鼠标后按钮会保持焦点。这就是为什么它仍然有红色边框。 您可以检查如果您激活窗体的其他窗口小部件,单击或制表红色边框消失。

使用try

QPushButton:pressed 

,而不是重点