我有一个基本的组合框,其中填充了来自sqlite3数据库表的数据:
self.langModel = QSqlTableModel(self)
self.langModel.setTable("languages")
self.langModel.setSort(self.langModel.fieldIndex("label"), Qt.AscendingOrder)
self.langModel.select()
...
self.comboLangs = QComboBox()
self.comboLangs.setModel(self.langModel)
self.comboLangs.setModelColumn(self.langModel.fieldIndex("label"))
self.layout.addRow("Language", self.comboLangs)
...
self.btnAdd = QPushButton("Add")
self.btnAdd.clicked.connect(self.addLoc)
self.btnLayout.addWidget(self.btnAdd)
...
def addLoc(self):
pprint(vars(self.langModel.data(self.langModel.index(self.comboLangs.currentIndex(), self.langModel.fieldIndex("iso")))))
以下是表架构:
^{pr2}$这只会产生一个空dict {}
。如何从QSqlTableModel获取所选/当前项的数据对象?在
好的,我想知道了(我希望PyQt参考文档能更具体地说明如何做到这一点)。无论如何,为了获得模型数据,我需要将QVariant对象转换为Python对象(toPyObject())或字符串(toString())。在
这给了我需要的数据。在
相关问题 更多 >
编程相关推荐