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


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

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

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


一、多元素控件

在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作为设计基础。


在这里插入图片描述

  • 29
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Duck Bro

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值