# 创建一个QStandardItemModel实例,用于存储表格数据
model = QStandardItemModel(4, 2) # 4行2列
# 填充模型数据
for row in range(4):
for column in range(2):
item = QStandardItem(f'Row {row}, Column {column}')
model.setItem(row, column, item)
# 创建一个QTableView实例
table_view = QTableView(self)
# 设置模型
table_view.setModel(model)
# 将表格视图添加到布局中
layout.addWidget(table_view)
# 设置窗口的布局
self.setLayout(layout)
# 设置窗口的标题
self.setWindowTitle('QTableView Example')
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = MyApp()
ex.show()
sys.exit(app.exec_())
代码解释
-
导入必要的模块:
sys:用于处理系统相关的操作。QApplication,QWidget,QVBoxLayout,QTableView:PyQt的GUI组件。QStandardItemModel,QStandardItem:用于创建和管理表格数据。
-
创建应用程序类
MyApp:- 继承自
QWidget。 - 在
__init__方法中调用initUI方法来初始化UI。
- 继承自
-
初始化UI:
- 创建一个垂直布局
QVBoxLayout。 - 创建一个
QStandardItemModel实例,用于存储表格数据。这里我们创建了一个4行2列的模型。 - 使用嵌套循环填充模型数据。
- 创建一个
QTableView实例,并设置模型。 - 将表格视图添加到布局中。
- 设置窗口的布局和标题。
- 创建一个垂直布局
-
运行应用程序:
- 创建
QApplication实例。 - 创建
MyApp实例并显示窗口。 - 进入应用程序的主循环。
- 创建
通过这个简单的例子,你可以看到如何在PyQt中使用 QTableView 组件来显示表格数据。你可以根据需要进一步自定义和扩展这个示例,例如添加排序、筛选、编辑等功能。

5301

被折叠的 条评论
为什么被折叠?



