• qt5-MVC:数据可视化的层次揭秘


    MVC模式原理

    每一个程序都有其原理,我们学习过程中透过他们的原理,来了解他们的工作方向,将会使我们的学习变得无比简单。

    揭秘数据层次顺序

    1. 建立格式布局
    2. 调用可视化功能
    3. 建立字符型列表模型
    4. 定义列表源数据列
    5. 把数据源列表加入列表模型
    6. 把列表模型加入可视化功能(可视化点击发射信号–激活消息盒子)
    7. 消息盒子槽函数,相当于列数数据的功能交互,完成数据消息功能调试
    8. 将可视化加入布局,相当于摆放到窗口内部
    9. 激活可视化布局,相当于把数据这块牌匾上面的红布揭开,正式对公众宣传开业。

    消息槽函数
    def clicked(self,item):
    QMessageBox.information()—消息盒子
    参数1:继承父类self
    参数2:QListView—触发继承自QListView
    参数3:盒子信息,信号列表索引item.row()
    备注:
    item—是列表的内容
    .row()—是调用当前内容的显示行索引(0,1,2…)

    程序源码

    from PyQt5.Qt import *
    import sys
    app = QApplication([])
    class ListView(QWidget):
        def __init__(self,parent=None):
            super(ListView,self).__init__(parent)
            self.setWindowTitle('QListView 例子')
            self.resize(300,270)
            layout = QVBoxLayout()
            listview = QListView()
            listmodel = QStringListModel()#字符列表:针对列表显示模型
            self.list = ['列表1','列表2','列表3']
            listmodel.setStringList(self.list)
            listview.setModel(listmodel)
            listview.clicked.connect(self.clicked) #发射一个item.row()索引数据给self.clicked
            layout.addWidget(listview)
            self.setLayout(layout) #布局生效语句,必须写完整,否则添加的可视化模板无法显示
    
        #点击弹出消息盒子,单击每一个列表项会有一个值存储到槽函数item中,item.row()方法会把对应项的索引数据显示出来
        def clicked(self,item):
            QMessageBox.information(self,'QListView','您选择了'+self.list[item.row()])
    
    win = ListView()
    win.show()
    sys.exit(app.exec_())
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25

    在这里插入图片描述

  • 相关阅读:
    17.Iterator迭代器(行为型模式)
    如何让PowerShell invoke-restmethod 和 invoke-webrequest 忽略不工作的自签名证书
    服务器负载均衡算法
    大厂在裁员,一本,985,211_该如何择业?
    常见排序算法要点
    读高性能MySQL(第4版)笔记18_扩展MySQL
    新版edge浏览器读取谷歌浏览器上的历史记录
    【Qt】.ui文件转.h文件
    动力节点Rabbitmq-18-21章RabbitMQ集群与高可用
    五粮液包装车间MES系统建设----工业软件讲坛第五次讲座
  • 原文地址:https://blog.csdn.net/weixin_41704077/article/details/125466355