2

我有一个带有字符串的数组,我想将每个字符串添加到不同的行和 a 的同一列中tableWidget

我正在使用该函数setItem来更改所需的字段,但出现错误QTableWidget.setItem(int, int, QTableWidgetItem): argument 3 has unexpected type 'str'。我搜索了一下,我想我必须使用函数QTableWidgetItemhere)将字符串转换为 a tableWidgetItem,但是,我不知道如何使用该函数,以及“类型”的含义(整数值)。

一个(具体)示例如何使用该函数将字符串转换为 atableWidgetItem将非常有帮助。

到目前为止,我的代码如下所示:

pc = 2
i = 0
while i <= pc:
    self.tableWidget.insertRow(i)
    self.tableWidget.setItem(i, 0, parameter[i])
    i += 1

tableWidget如果有人指出是否有更好的方法将字符串添加到 a than ,这也会有所帮助setItem

4

2 回答 2

5

QTableWidgetItem构造函数接受一个字符串作为参数。在您的情况下,您只需将第五行更改为(假设parameter是字符串列表)

self.tableWidget.setItem(i, 0, QtGui.QTableWidgetItem(parameter[i]))
于 2011-08-12T17:16:18.217 回答
0

您收到错误是因为 setItem 将 QTableWidgetItem* 作为第三个参数的输入。尝试这个

pc = 2
self.tableWidget.setRowCount(pc)
i = 0
while i <= pc:
    self.tableWidget.setItem(i, 0, QtGui.QTableWidgetItem(parameter[i]))
    i += 1
于 2011-08-12T19:01:40.630 回答