1)我在用Qt设计器创建的UI中有一个名为“ch_check”的复选框,需要测试
2)还有一个按钮“bt_button”,它触发一个简单的功能:
self.dlg.bt_button.clicked.connect(self.doCheck)
3)功能:
def doCheck(self):
if ch_check.isChecked():
self.dlg.le_text.setText("Hello")
else:
self.dlg.le_text.setText("Nope")
但是我不知道如何正确地引用这个框。我该怎么做?我需要先连接复选框吗?到目前为止,我发现的所有示例都使用复选框来触发函数和其他功能,而完全忽略了这个基本用法。我找到了这个问题,但它没有回答如何处理现有的复选框:How to check if a checkbox is checked in pyqt
如上所述,我只是犯了一个小错误。正确的代码是:
你可以利用StateChanged信号来实现这一点。对于本例,我们有一个简单的
.ui
和一个简单的.py
文件:.ui
文件定义了两个小部件。一个复选框(ch_check
)和一个QLabel(my_label
)python文件:
说明:
我们用这条线设置信号:
当复选框的状态改变时,它将调用
state_changed
函数。这就是检查复选框是否选中的逻辑所在。在函数中,我们确定复选框是否已选中。如果是,我们将标签更改为“选中”,如果未选中,则标签更改为“未选中”。
示例:
启动应用程序时,用户界面如下所示:
选中此框,将更改标签:
取消选中该框,也会更改标签:
相关问题 更多 >
编程相关推荐