0
点赞
收藏
分享

微信扫一扫

课时64.显示二维表数据(QTableView控件)

_阿瑶 2022-03-13 阅读 69
mvc

课时64.显示二维表数据(QTableView控件)

"""
显示二维表数据 (QTableView控件)

数据源 Model
需要创建QTableView实例和一个数据源(Model), 然后将两者关联

MVC: Model Viewer Controller

"""
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
import sys


class TableView(QWidget):

    def __init__(self, arg=None):
        super(TableView, self).__init__(arg)
        self.setWindowTitle("QTableView表格视图控件演示")
        self.resize(500, 300)

        self.model = QStandardItemModel(4, 3)
        self.model.setHorizontalHeaderLabels(["id", "姓名", "年龄"])

        self.tableview = QTableView()
        # 关联QTableView控件和Model
        self.tableview.setModel(self.model)

        #  增加数据
        item_11 = QStandardItem("10")
        item_12 = QStandardItem("普京")
        item_13 = QStandardItem("70")
        self.model.setItem(0, 0, item_11)
        self.model.setItem(0, 1, item_12)
        self.model.setItem(0, 2, item_13)

        layout = QVBoxLayout()
        layout.addWidget(self.tableview)
        self.setLayout(layout)

if __name__ == '__main__':
    app = QApplication(sys.argv)

    tableView = TableView()
    tableView.show()

    sys.exit(app.exec_())

 

"""
显示二维表数据 (QTableView控件)

数据源 Model
需要创建QTableView实例和一个数据源(Model), 然后将两者关联

MVC: Model Viewer Controller

"""
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
import sys


class TableView(QWidget):

    def __init__(self, arg=None):
        super(TableView, self).__init__(arg)
        self.setWindowTitle("QTableView表格视图控件演示")
        self.resize(500, 300)

        self.model = QStandardItemModel(4, 3)
        self.model.setHorizontalHeaderLabels(["id", "姓名", "年龄"])

        self.tableview = QTableView()
        # 关联QTableView控件和Model
        self.tableview.setModel(self.model)

        #  增加数据
        item_11 = QStandardItem("10")
        item_12 = QStandardItem("普京")
        item_13 = QStandardItem("70")
        self.model.setItem(0, 0, item_11)
        self.model.setItem(0, 1, item_12)
        self.model.setItem(0, 2, item_13)

        item_31 = QStandardItem("30")
        item_32 = QStandardItem("乌克兰")
        item_33 = QStandardItem("30")
        self.model.setItem(2, 0, item_31)
        self.model.setItem(2, 1, item_32)
        self.model.setItem(2, 2, item_33)

        layout = QVBoxLayout()
        layout.addWidget(self.tableview)
        self.setLayout(layout)

if __name__ == '__main__':
    app = QApplication(sys.argv)

    tableView = TableView()
    tableView.show()

    sys.exit(app.exec_())

 

举报

相关推荐

0 条评论