我正在使用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)
行为我提供了特定表的特定列的所有值。我将数据库中的所有列值列入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'
如何列出组合框中的值?
答案 0 :(得分:5)
fetchall()
方法产生元组,即使在SQL SELECT
子句中只选择一个值也是如此。将您的代码更改为:
for row in c.fetchall():
self.comboBox.addItem(row[0])