【发布时间】:2014-06-17 03:23:33
【问题描述】:
我在 PyQt 中有一个应用程序,有几个按钮可以在应用程序模式之间切换。
我将按钮的 clicked() 信号链接到适当的方法。我的问题是还有其他方法可以更改模式(例如,加载设置会自动将用户移动到默认模式),我使用 QPushButtons 作为“活动模式”的指示器。这之前是通过为每个按钮设置两个图标来实现的,一个用于关闭按钮,另一个用于打开按钮。这一切都是在 QtDesigner 中设计的,因此单击一个按钮会打开它(并关闭其他按钮)并适当地更改图标。释放鼠标时,该按钮保持打开状态。
该按钮保持打开状态,直到按下另一个按钮。
我试图弄清楚如何在用户不实际按下按钮的情况下将按钮从“开”更改为“关”,这样我就可以适当地更改模式。
Qt 文档引用了我正在寻找的属性,但除了这些状态存在这一事实之外,我找不到更多细节:
最重要的模式或状态是:
是否可用(灰显、禁用)。
标准按钮、切换按钮或菜单按钮。
开或关(仅适用于切换按钮)。
默认或正常。对话框中的默认按钮通常可以使用 Enter 或 Return 键。
是否自动重复。
是否按下。
(http://qt-project.org/doc/qt-5/QPushButton.html)
更具体地说,我正在寻找一种查看 QPushButton 状态的方法;看看它是“开”还是“关”,我正在寻找一种改变这种状态的方法。
编辑:我找到了合适的方法 QPushButton.isOn() 但问题是它在 Qt3 中。 (我正在使用 Qt5,这种方法不再存在)。显然它现在已经过时了,有人会碰巧知道是什么取代了它吗? http://doc.qt.digia.com/3.2/qpushbutton.html#isOn
【问题讨论】: