如何搜索特定类型的qtgui控件



我有一个包含QGroupBoxQWidget,它包含QComboBoxQLineEditQCheckBox

我需要浏览所有控件,如果控件是QCheckBox,请询问是否已检查。我需要知道如何检查所有的QCheckBox——这个想法可能是这样的:

count = 0
for control in groupbox.controls():
    if control is type of QtGui.QCheckBox:
        if control.isChecked:
            count = count + 1
        else:
            print('no checked')
    else:
        print('no QtGui.QCheckBox')
print ('there are '+ str(count)+ 'checked')

如果复选框都是groupbox的子项,那么您可以尝试以下操作:

count = 0
for checkbox in groupbox.findChildren(QtGui.QCheckBox):
    if checkbox.isChecked():
        count += 1
print('there are %s checked' % count)

如果复选框是这样创建的,那么它们将是分组框的子项:

checkbox = QtGui.QCheckBox('Title', groupbox)

相关内容

  • 没有找到相关文章

最新更新