在使用PyQt中的QTableView和Model来快速填充数据的过程中,可以按照以下步骤进行操作:
from PyQt5.QtWidgets import QApplication, QTableView
from PyQt5.QtCore import Qt, QAbstractTableModel
class MyTableModel(QAbstractTableModel):
def __init__(self, data, headers):
super().__init__()
self.data = data
self.headers = headers
def rowCount(self, parent):
return len(self.data)
def columnCount(self, parent):
return len(self.data[0])
def data(self, index, role):
if role == Qt.DisplayRole:
return str(self.data[index.row()][index.column()])
def headerData(self, section, orientation, role):
if role == Qt.DisplayRole:
if orientation == Qt.Horizontal:
return str(self.headers[section])
else:
return str(section + 1)
在上面的代码中,data
参数为二维数据,headers
参数为列标题列表。
app = QApplication([])
table = QTableView()
data = [
[1, 'John', 25],
[2, 'Jane', 30],
[3, 'Tom', 35]
]
headers = ['ID', 'Name', 'Age']
model = MyTableModel(data, headers)
table.setModel(model)
table.horizontalHeader().setStretchLastSection(True)
table.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)
table.show()
app.exec()
以上代码会创建一个包含数据的表格,并自动填充到QTableView中显示出来。
总结一下,使用PyQt中的数据快速填充QTableView/Model的步骤是:
关于腾讯云相关产品和产品介绍链接地址,可参考腾讯云官方文档或咨询腾讯云的客服人员。
领取专属 10元无门槛券
手把手带您无忧上云