【问题标题】:how to add QpushButton to every row inside QTablewidget [duplicate]如何将QpushButton添加到QTablewidget中的每一行[重复]
【发布时间】:2018-12-10 00:44:02
【问题描述】:

我需要在表格的每个 raw 中添加一个按钮,这是我的代码:

    queue = 1
    test_list = [1,5,51,651,651,651,651,651,651,651,651,651,64,8,54,564,984,654,984,654,84,651,81,651,8,165,18,16,19,88]
    for item in test_list:
        self.button = QtGui.QPushButton(self.tableWidget)
        rowPosition = self.tableWidget.rowCount()
        self.tableWidget.insertRow(rowPosition)
        self.tableWidget.setItem(rowPosition , 0, QtGui.QTableWidgetItem("text" + str(item)))
        self.tableWidget.setItem(rowPosition , 1, QtGui.QTableWidgetItem("text" + str(item)))
        self.tableWidget.setItem(rowPosition , 2, QtGui.QTableWidgetItem("text" + str(item)))
        self.tableWidget.setItem(rowPosition , 3, QtGui.QTableWidgetItem("text" + str(item)))
        self.tableWidget.setItem(rowPosition , 4, QtGui.QTableWidgetItem("text" + str(item)))
        self.tableWidget.setItem(rowPosition , 5, QtGui.QTableWidgetItem(self.button))
        self.tableWidget.setItem(rowPosition , 6, QtGui.QTableWidgetItem(str(queue)))
        queue += 1

每次运行项目时都会出现此错误

QTableWidgetItem(QTableWidgetItem): argument 1 has unexpected type 'QPushButton'

【问题讨论】:

    标签: python pyqt4


    【解决方案1】:

    如果引用QTableWidgetdocumentation,看setItem的方法签名:

    QTableWidget.setItem(self, int row, int column, QTableWidgetItem item)

    这就是您收到错误的原因。该方法需要一个QTableWidgetItem,而你给它一个QPushButton

    您要查找的方法是setCellWidget (documentation)。

    【讨论】:

      猜你喜欢
      • 2017-01-23
      • 2014-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多