我正在使用python插件.我使用pyqt4 designer设计了我的表单.它有一个组合框.我在python中编码如下:
self.db._exec_sql(c, "SELECT "+column_name1+" from "+table_name+" ")
for row in c.fetchall():
print row
self.comboBox.addItem(row)
Run Code Online (Sandbox Code Playgroud)
row给出了特定表的特定列的所有值.我将数据库中的所有列值列入combobox.But self.comboBox.addItem(row) 给出错误说:
TypeError: arguments did not match any overloaded call:
QComboBox.addItem(QString, QVariant userData=QVariant()): argument 1 has unexp
ected type 'tuple'
QComboBox.addItem(QIcon, QString, QVariant userData=QVariant()): argument 1 ha
s unexpected type 'tuple'
Run Code Online (Sandbox Code Playgroud)
我如何在组合框中列出值?
fetchall()即使在SQL SELECT子句中只选择一个值,方法也会生成元组.将您的代码更改为:
for row in c.fetchall():
self.comboBox.addItem(row[0])
Run Code Online (Sandbox Code Playgroud)