2

文字列を含む配列があり、各文字列をの異なる行と同じ列に追加したいと思いますtableWidget

関数setItemを使用して目的のフィールドを変更していますが、エラーが発生しますQTableWidget.setItem(int, int, QTableWidgetItem): argument 3 has unexpected type 'str'。少し検索して、文字列をに変換するには関数QTableWidgetItemここtableWidgetItem)を使用する必要があると思いますが、その関数の使用方法と「type」の意味(整数値)がわかりません。

その関数を使用して文字列をに変換する(具体的な)例tableWidgetItemは非常に役立ちます。

これまでのところ、私のコードは次のようになっています。

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

tableWidgetに文字列を追加するより良い方法があるかどうか誰かが指摘した場合にも役立ちますsetItem

4

2 に答える 2

5

QTableWidgetItemコンストラクターは、文字列を引数として受け入れます。あなたの場合、5行目を(parameter文字列のリストであると仮定して)に変更するだけです

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

setItem は QTableWidgetItem* を 3 番目の引数の入力として受け取るため、エラーが発生します。これを試して

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 に答える