zoukankan      html  css  js  c++  java
  • PyQt学习随笔:Qt中tem Views(Model-Based)和Item Widgets(Item-Based)控件的用途和关系

    在界面程序开发中,数据的展示主要包括表格、简单列表、树状列表以及纯文本等多种方式,在Qt中将界面表格、简单列表、树状列表称为“表项视图类(item view class)”,并提供了两种实现方式,一种叫item based,这些类名以widget结尾,如QListWidget等。另一种叫model based,这些类以view结尾,如QListView等,对应QtDesigner控件的Item Views(Model-Based)和Item Widgets(Item-Based)这两类控件。

    这两类控件都可以实现界面的表项视图展示,二者之间存在关系和区别:
    1、Item Views(Model-Based)类内的控件是Item Widgets(Item-Based)内对应控件的父类,如QTreeWidget是从QTreeView派生的;

    2、Item Views(Model-Based)的对象进行数据操作相对比较复杂,但处理及展示大数据量时性能高,而Item Widgets的数据操作比较简单,但处理及展示大数据量时性能相对低;

    3、Item Views类控件是MVC(Model、View、Controller)架构的一种简化,数据和展现及实现逻辑分开,数据在Model中存储和操作,View负责展现、界面操作及逻辑控制;Item Widgets则将数据、展现及控制合并在一起,开发中没有Item Views灵活,实际上Item Widgets就是在Item Views的基础上绑定了一个默认的存储并提供了相关方法。


    老猿Python,跟老猿学Python!
    博客地址:https://blog.csdn.net/LaoYuanPython

    老猿Python博客文章目录:https://blog.csdn.net/LaoYuanPython/article/details/98245036

    请大家多多支持,点赞、评论和加关注!谢谢!

  • 相关阅读:
    什么是前后端分离?
    Ubuntu修改时区和更新时间
    待学
    Pycharm默认输入状态是insert状态,选中文字无法直接输入替换或删除
    使用jsonify返回json数据
    Linux
    Linux
    Linux
    JavaScript
    JavaScript
  • 原文地址:https://www.cnblogs.com/LaoYuanPython/p/11931721.html
Copyright © 2011-2022 走看看