qtoolbutton 按下状态_PyQt5按钮状态
时间: 2023-07-21 08:12:31 浏览: 223
在 PyQt5 中,QToolButton 是一个按钮控件,可以通过 setCheckable(True) 方法使其成为可选中的按钮,同时可以通过 setChecked(True) 方法设置其初始状态为选中。
当 QToolButton 被选中后,可以通过 isChecked() 方法获取其当前状态。如果需要在按钮状态改变时执行一些操作,可以通过 toggled 信号连接一个槽函数,该槽函数会在按钮状态改变时被调用。
以下是一个简单的示例代码,演示如何实现 QToolButton 的按下状态:
```python
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QToolButton
class Example(QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
self.setGeometry(300, 300, 300, 200)
# 创建一个 QToolButton
self.btn = QToolButton(self)
self.btn.setText('Press me')
self.btn.setCheckable(True) # 设置为可选中
# 连接 toggled 信号和槽函数
self.btn.toggled.connect(self.onToggled)
self.show()
def onToggled(self, checked):
if checked:
print('Button is pressed')
else:
print('Button is released')
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
```
在该示例中,我们创建了一个 QToolButton,并将其设置为可选中状态。然后,我们连接了 toggled 信号和一个槽函数 onToggled,该函数会在按钮状态改变时被调用。在槽函数中,我们通过 isChecked() 方法获取按钮当前的状态,并输出相应的信息。
阅读全文