如何在 PyQt4 的动态复选框列表中检查 stateChanged
How to check stateChanged in a dynamic checkbox list in PyQt4
所以我要从 PyQt4 的列表中添加复选框。但是我想不出一种方法来在我的 Window class.
中为每个人使用 stateChanged
这是从列表元素中添加它们的函数:
def addCheckbox(self):
colunas = Graphic(self.caminho).getColunas()
for col in colunas:
c = QtGui.QCheckBox(col, self, objectName=col)
self.layout.addWidget(c)
我试图在 while True
中获取它们的对象名称并使用:
self.name.stateChanged.connect(self.clickBox)
但这只会冻结代码。
我该怎么做?
您可以尝试以下方法:
def clickBoxStateChanged(self, objectName):
def stateChanged(state):
print(objectName)
print(state)
return stateChanged
然后,在你的循环中:
for col in colunas:
c = QtGui.QCheckBox(col, self, objectName=col)
c.stateChanged.connect(self.clickBoxStateChanged(col))
self.layout.addWidget(c)
所以我要从 PyQt4 的列表中添加复选框。但是我想不出一种方法来在我的 Window class.
中为每个人使用 stateChanged这是从列表元素中添加它们的函数:
def addCheckbox(self):
colunas = Graphic(self.caminho).getColunas()
for col in colunas:
c = QtGui.QCheckBox(col, self, objectName=col)
self.layout.addWidget(c)
我试图在 while True
中获取它们的对象名称并使用:
self.name.stateChanged.connect(self.clickBox)
但这只会冻结代码。
我该怎么做?
您可以尝试以下方法:
def clickBoxStateChanged(self, objectName):
def stateChanged(state):
print(objectName)
print(state)
return stateChanged
然后,在你的循环中:
for col in colunas:
c = QtGui.QCheckBox(col, self, objectName=col)
c.stateChanged.connect(self.clickBoxStateChanged(col))
self.layout.addWidget(c)