我想启用一个组合框,它在Qt设计器的属性编辑器中被禁用,但是,只有当用户选中复选框时。我写了以下内容,但它不起作用。它被放在主类的__init__
方法中。你能帮我解释一下为什么吗?在
if self.dlg.checkBox.isChecked():
self.dlg.cmbvectorLayer6.setEnabled(True)
编辑:
现在,在主类的__init__
方法中有以下内容:
其中enablecombo
为:
def enablecombo(self):
self.dlg.cmbvectorLayer6.setEnabled(True)
它可以很好地激活组合框。但我不知道如何做等效的,以禁用组合框时,复选框取消选中。。。在
您检查状态是否已检查,但您需要检查isEnabled
什么是当前状态,只需调用一个检查它的函数,然后根据它的输出启用/禁用它
^{pr2}$QCheckBox
类继承QAbstractButton
,因此您可以使用toggled信号来执行您想要的操作:或直接连接到组合框:
^{pr2}$(也可以在Qt设计器中设置这些类型的直接连接,方法是使用Signals and Slots Editing Mode)
相关问题 更多 >
编程相关推荐