Как найти объект по имени в pyqt?

у меня есть список словарей:

globalParams = [{'attr':'enabled','ctrl':'checkBoxEnabled','type':'checkBox'},
                {'attr':'colorMode','ctrl':'comboBoxColorMode','type':'comboBox'}]

'ctrl' - имя элемента управления в окне Qt.

как правило, код выглядит следующим образом:

self.checkBoxEnabled.checkState()

но checkBoxEnabled является объектом. и у меня есть только имя строки "checkBoxEnabled" и не могу его использовать...

Как найти объект по имени в pyqt? что-то вроде? личность.GetObjectByName ('checkBoxEnabled').состояния checkstate()

1 ответов


можно использовать QObject::findChild метод. В pyqt это должно быть написано так:

checkbox = self.findChild(QtGui.QCheckBox, "checkBoxEnabled")

self должен быть родительским виджетом флажка.