pyqt 设置action复选框
时间: 2023-09-24 22:09:45 浏览: 176
在PyQt中,可以使用QAction类的setChecked()方法来设置Action复选框的状态。该方法接受一个布尔值作为参数,表示是否选中该Action。
示例代码:
```python
from PyQt5.QtWidgets import QMainWindow, QAction, QApplication
class MyWindow(QMainWindow):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
# 创建一个Action
self.checkAction = QAction('Check Action', self)
# 设置Action为复选框
self.checkAction.setCheckable(True)
# 设置默认为选中状态
self.checkAction.setChecked(True)
# 绑定Action的触发事件
self.checkAction.triggered.connect(self.onCheckActionTriggered)
# 添加Action到菜单栏
menubar = self.menuBar()
fileMenu = menubar.addMenu('File')
fileMenu.addAction(self.checkAction)
self.setGeometry(300, 300, 300, 200)
self.setWindowTitle('Set Action Checkbox')
self.show()
def onCheckActionTriggered(self, isChecked):
# Action被选中或取消选中时触发该事件
print('Action Checked:', isChecked)
if __name__ == '__main__':
app = QApplication([])
window = MyWindow()
app.exec_()
```
在该示例中,我们创建了一个名为“Check Action”的Action,并将其设置为复选框。我们还设置了默认选中状态,并将其添加到菜单栏中。当用户单击该Action时,我们将调用onCheckActionTriggered()方法,并传递当前选中状态。在该方法中,我们将打印选中状态。
阅读全文