【Qt 学习笔记】Qt常用控件 | 多元素控件 | 多元素控件介绍

server/2024/10/18 15:01:02/

  • 博客主页:Duck Bro 博客主页
  • 系列专栏:Qt 专栏
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

Qt常用控件 | 多元素控件 | 控件介绍

文章编号:Qt 学习笔记 / 35

文章目录

  • Qt常用控件 | 多元素控件 | 控件介绍
    • 一、多元素控件
      • 1. 列表
      • 2. 表格
      • 3. 树形
    • 二、xxWidget 和 xxView 之间的区别
      • 1. 两者的区别
      • 2. 什么是MVC


一、多元素控件

在Qt中,多元素控件是指可以包含多个子控件的控件。这些子控件可以是任意类型的,比如按钮、文本框、标签等。多元素控件能够提供更丰富的用户界面,并且可以通过对子控件进行布局和样式设置来实现不同的展示效果。常见的多元素控件包括窗口、对话框、表格视图等。使用多元素控件可以方便地组织和管理多个相关的子控件,提高界面的可维护性和扩展性。

在这里插入图片描述

在Qt中提供了多元素控件有如下,可以归类为三类

1. 列表

QListWidget:一个用于显示列表的控件,它可以显示字符串、图像和其他自定义项目。它是QListView的一个子类
QListView:是Qt框架中用于显示列表数据的小部件。它是一个基础的列表视图类,提供了一种灵活且高度可定制的方式来显示和管理数据。

2. 表格

QTableWidget:是Qt框架下的一个表格控件,用于显示和编辑表格数据。它是QTableView的一个子类,提供了更方便的方式来操作和呈现表格数据。
QTableView:QTableView是Qt框架下的一个表格控件,用于显示和编辑表格数据。

3. 树形

QTreeWidget:QTreeWidget是一个基于树形结构的控件,用于显示和编辑层次化的数据。它是Qt框架下的一个控件,继承自QTreeView,可以展示树状结构的数据,并支持对树节点的操作和编辑。
QTreeView:QTreeView是Qt框架中的一个控件,用于展示和编辑层次化的数据。它是基于模型视图设计模式的实现,通过设置数据模型来显示数据,并提供了丰富的功能和交互方式。


二、xxWidget 和 xxView 之间的区别

1. 两者的区别

xxWidget 和 xxView 之间的区别
以 QTableWidget 和 QTableView 为例.

  • QTableView 是基于 MVC 设计的控件. QTableView ⾃⾝不持有数据. 使⽤ QTableView 的时候需要用户创建⼀个 Model 对象 (比如 QStandardModel ), 并且把 Model 和QTableView 关联起来. 后续修改 Model 中的数据就会影响 QTableView 的显⽰; 修改QTableView 的显示也会影响到 Model 中的数据(双向绑定).
  • QTableWidget 则是 QTableView 的子类, 对 Model 进行了封装. 不需要用户手动创建
    Model 对象, 直接就可以往 QTableWidget 中添加数据了.

备注:xxWidget 基于 xxView 同时把 model 和 controller 都帮我们实现好了~~拿过来就可以使用.人家提供了功能很方便的 api, 让我们直接就用

2. 什么是MVC

在这里插入图片描述
MVC是一种软件设计模式,它将应用程序的逻辑分成三个部分:模型(Model)、视图(View)和控制器(Controller)。

模型(Model)负责处理应用程序的数据逻辑和业务逻辑。它通常表示应用程序的数据结构和功能,包括数据库查询和更新、数据验证、业务逻辑等。

视图(View)负责展示数据给用户,并处理用户的输入。它通常是用户界面的一部分,可以是一个网页、一个桌面窗口或者一个移动应用的界面。

控制器(Controller)负责协调模型和视图之间的交互。它接收用户的输入,更新模型的状态,并将变化反映到视图上。

MVC的目的是将应用程序的不同部分解耦,使得每个部分都可以独立开发和维护。它提供了一种清晰的架构,使得代码变得可读性强、可扩展性高,并且可以更好地组织和管理代码。许多现代的编程框架和开发工具都采用了MVC作为设计基础。


在这里插入图片描述


http://www.ppmy.cn/server/42100.html

相关文章

【C -> Cpp】由C迈向Cpp (6):静态、友元和内部类

标题:【C -> Cpp】由C迈向Cpp (6):静态、友元和内部类 水墨不写bug (图片来源于网络) 目录 (一)静态成员 (二)友元 (三&#xff09…

python数据分析所需要了解的结构基础

Python语言基础——结构基础 前言一、列表列表的介绍列表的语法示例注意要点符号元素切片运算符示例 二、字典字典的介绍字典的特点字典的语法 三、元组元组的介绍元组的语法示例 四、字符串字符串的介绍字符串的语法 五、操作运算符算术运算符赋值运算符比较运算符逻辑运算符位…

985大学电子信息专硕,考C语言+数据结构!中央民族大学25计算机考研考情分析!

中央民族大学(Minzu University of China)坐落于北京市学府林立的海淀区,南邻国家图书馆,北依中关村科技园,校园环境典雅,古朴幽美,人文氛围浓郁,具有鲜明的民族特色。由北京市、国家…

[牛客网]——C语言刷题day2

答案:B 解析: char *p[10] 是指针数组,数组里存放了10个指针,在64位系统下指针占8个字节,所以sizeof(p) 10 * 8 80. char (*p1)[10]是数组指针,p1是一个指向存放10个char类型的数组的指针,所以sizeof(p1) 8. 答案:B 解析&#xff1a…

C++:类与对象—继承

类与对象—继承 一、继承是什么?二、继承定义三、基类和派生类对象赋值转换四、继承中的作用域五、派生类的默认成员函数六、继承与友元七、继承与静态成员八、复杂的菱形继承及菱形虚拟继承九、继承的总结和反思十、考察重点 一、继承是什么? 继承(inh…

WordPress插件Show IDs by Echo,后台显示文章、页面、分类、标签、媒体库、评论、用户的ID

WordPress的这款Show IDs by Echo插件,可以让我们设置是增加一列ID还是直接在“编辑 |快速编辑 |查看”操作后面增加ID,而且支持展示以下内容的ID: 文章页面类别标签评论自定义帖子类型自定义分类法用户媒体 Show IDs by Echo插件的安装及启…

外包干了5天,技术退步明显.......

先说一下自己的情况,大专生,18年通过校招进入杭州某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落! 而我已经在一个企业干了四年的功能测…

【Linux】shell基础,shell脚本

Shell Shell是一个用C语言编写的程序,接受用户输入的命令,并将其传递给操作系统内核执行。Shell还负责解释和执行命令、管理文件系统、控制进程,是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言 Shell脚本 Sh…