我试图从qcombobox访问当前项目。
我使用列表中的动态项创建了一个组合框。
self.combo = QtGui.QComboBox()
for itm in self.ctpc:
itms = str(itm)
# [1:-2] removes '<' and '>' from beginning and end
self.combo.addItem(itms[1:-1], userData=unicode(itm))
print itm
print ("cut_items_ordered: ", itm.cut_items_ordered)
print ("Version: {} \n".format(itm.version))
self.ctpc include。
[<Cut Sequence 1>, <Cut simpans>, <Cut 20_sec>, <Cut test>]´
并且关注用户选择的内容。我想从相关剪辑中获取'cut_items_ordered'。 但我不确定按下按钮时如何链接数据。
cut_items_order例如来自包含大量剪辑的列表:
[<CutItem A012C012_161202_R0FS>, <CutItem A019C007_161203_R0FS>, <CutItem A009C003_161202_R0FS>])
按下“确定”时:
for i in range(self.combo.count()):
itmData = self.combo.itemData(i)
comboIndex = self.combo.currentIndex()
if comboIndex == itmData:
print self.combo.currentText()
编辑:
新代码看起来像,
for itm in self.ctpc:
self.itms = str(itm)
# [1:-2] removes '<' and '>' from beginning and end
self.combo.insertItem(0, self.itms[1:-1])
self.combo.setItemData(0, unicode(itm))
self.combo.setItemData(0, unicode(itm.cut_items_ordered))
self.combo.setItemData(0, unicode(itm.version))
稍后按下按钮(它连接到func btn_accepted)
def btn_accepted(self)
for i in range(self.combo.count()):
self.itmData = self.combo.itemData(self.combo.currentIndex())
print self.itmData
在这里,我希望能够通过它自己访问itm.cut_items_orderd中的所有数据,并通过它自己进行版本访问。