【问题标题】:how to insert data from lineEdit to tableWidget in PyQt4?如何在 PyQt4 中将 lineEdit 中的数据插入 tableWidget?
【发布时间】:2013-12-01 09:48:21
【问题描述】:

我是 PyQt 的新手,目前正在处理用户将数据插入 lineEdit 的表单,提交后数据将显示在 tablewidget 中。 我正在从 lineEdit 读取数据并打印它,但不幸的是没有找到将 lineEdit 数据添加到 tableWidget 的任何方法。数据应该出现在确切的单元格中。 如果描述了这种方式,这将非常有帮助。 谢谢。

【问题讨论】:

    标签: python uitableview pyqt4


    【解决方案1】:

    你是先用 insertRow() 添加一行吗?这是一个适用于我的快速示例应用程序。调用 setItem() 时设置行列。

    from PyQt4.QtGui import QApplication, QLineEdit, QTableWidget, QTableWidgetItem, \
        QWidget, QVBoxLayout
    
    class Window(QWidget):
        def __init__(self, parent=None):
            super(Window, self).__init__(parent)
    
            self.lineEdit = QLineEdit()
    
            self.tableWidget = QTableWidget()
            self.tableWidget.setColumnCount(1)
    
            layout = QVBoxLayout()
            layout.addWidget(self.lineEdit)
            layout.addWidget(self.tableWidget)
            self.setLayout(layout)
    
            # When 'enter' is pressed call the 'addItem' function.
            self.lineEdit.returnPressed.connect(self.addItem)
    
        def addItem(self):
            text = self.lineEdit.text()
    
            # Get the number of rows in the TableWidget and insert
            # a new row at the end.
            lastrow = self.tableWidget.rowCount()
            self.tableWidget.insertRow(lastrow)
    
            item = QTableWidgetItem(text)
    
            # .setItem(row, column, item)
            self.tableWidget.setItem(lastrow, 0, item)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-05
      • 1970-01-01
      • 1970-01-01
      • 2020-09-24
      • 2011-12-22
      • 2018-03-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多