当前位置: 首页 > wzjs >正文

网站建设什么服务器好搜索优化师

网站建设什么服务器好,搜索优化师,微信上登录网站同步怎么做,没固定ip怎么做网站目录 多元素控件介绍 QListWidget QTableWidget QTreeWidget 多元素控件介绍 多元素控件表示这个控件中包含了很多的元素,元素可能指的是字符串,也可以指的是更加复杂的数据结构、图片等等 Qt 中提供的多元素控件有: QListWidgetQListViewQTableW…

目录

多元素控件介绍

QListWidget

QTableWidget

QTreeWidget


多元素控件介绍

多元素控件表示这个控件中包含了很多的元素,元素可能指的是字符串,也可以指的是更加复杂的数据结构、图片等等

Qt 中提供的多元素控件有:

  • QListWidget
  • QListView
  • QTableWidget
  • QTableView
  • QTreeWidget
  • QTreeView

上述前两个表示列表,中间两个表示表格,后两个表示树形

xxWidget vs xxView 的区别:

  • xxView 是更底层的实现
  • xxWidget 是基于 xxView 封装而来的
  • 此处 xxView 是 MVC 结构的一种典型实现
    M model 数据
    Vview视图 (界面)
    C controller 控制器 数据和视图之间的业务流程

此处 xxView 只是负责实现了视图,不负责数据如何存储表示,更不负责数据和视图之间的交互,因此如果使用 xxView,就需要程序员自己实现 model 和 controller 的部分,就比较麻烦

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

  • xxView:使用起来更麻烦一些,但是可以根据情况来自由 diy,实现更复杂的功能
  • xxWidget:使用比较方便,但是功能比较有限

QListWidget

使用 QListwidget 能够显示一个纵向的列表

核心属性:


核心方法:

  • 列表中的每个元素/每一项就称为是一个 ltem,更具体的说,是通过 QListWidgetltem 类表示的
  • addItem 默认在末尾插入,insertItem 可以指定在第几行插入,row就表示插入完毕后新的元素在第几行

核心信号:


图形化界面的方式拖动 ListWidget、输入框 LineExit、两个 pushButton:

接着初始化 ListWidget,有两种方式:

第一种是图形化界面中,右键 QListwidget选择编辑项目,就可以直接添加内容

第二种是通过代码的方式,在构造函数中添加:


下面设置新增和删除两个按钮的槽函数:

效果如下,初始是三个内容:

如果输入内容,点击新增,就会默认新增到末尾(因为代码中使用的是 addItem):

选中左边列表的 Python,点击删除,就会删除掉:

也可以完善 ListWidget 的槽函数,每次选中时打印此次和上一次选中的内容:

运行程序:


QTableWidget

使用 QTablewidget 表示一个表格控件,一个表格中包含若干行,每一行又包含若干列
表格中的每个单元格,是一个 QTableWidgetItem 对象

核心方法:


核心信号:


核心方法:


图形化界面的方式创建:

并将这四个按钮的 objectName 设置好:


表格中输出数据的设置,与 QListWidget 一样,既可以使用图形化界面的方式,也可以使用代码的方式

如果当前表格中的数据是固定的完全就可以通过图形化的方式来进行编辑
但是实际开发中,很多时候数据是从文件/网络来加载的,此时通过图形化编辑不合适

下面使用代码的方式进行设置:

运行程序:

下面完成四个按钮的槽函数:

运行程序,初始为:

点击新增一行:

选中4和5行,点击删除选中行:

输入框中输入年级,并点击新增一列:

选中年级那一列,点击删除选中列:


QTreeWidget

使用 QTreeWidget 表示一个树形控件,里面的每个元素,都是一个 QTreeWidgetItem
每个QTreewidgetItem 可以包含多个文本和图标,每个文本/图标为一个列

可以给 QTreewidget 设置顶层节点(顶层节点可以有多个),然后再给顶层节点添加子节点,从而构成树形结构

QTreeWidget 控件虽然是树形结构,但是这个树形结构,没有体现出根节点,是从根节点的下一层子节点开始计算的,所以根节点的下一层子节点称为 topLevelItem

QTreeWidget 可以理解为 QTableWidget 的进化版本

  • QTableWidget 固定一行中有很多列
  • QTreeWidget 它是一个树形结构,树形结构中的每一个结点又可以包含多个列

QTreeWidget 核心方法:


QTreeWidget 核心信号:


QTreeWidgetItem核心属性:


QTreeWidgetItem 核心方法:


图形化界面的方式创建 tree Widget、输入框、三个按钮

并将按钮的 objectName 改为:

下面就需要初始化数据了,也是有两种方式

第一种,右键编辑项目

如下所示:

点击确定:

此时运行程序:

上述的 1 表示根节点的名字,可以手动修改


但是实际开发中,很多时候数据是从文件/网络来加载的,此时通过图形化编辑不合适,所以就需要使用
第二种,代码的方式

在构造函数中添加代码: 

此时运行程序,与刚刚的效果一样:


下面实现三个按钮的功能:

pushButton_insertTopLevelItem:

pushButton_insertItem:

pushButton_deleteItem:


上述这几个控件相关的操作,数据都是在内存中保存的,无论在界面上做任何操作,重新运行程序,之前的数据就都没了

如果要想让数据能够重启也不丢失,就需要编写更多的代码,把内存存储的数据获取到,写入到文件中,并且在下次运行的时候从文件加载数据 


Qt之多元素控件到此结束

http://www.dtcms.com/wzjs/227355.html

相关文章:

  • 做购物网站小图标搜狗指数官网
  • 物联网系统seo搜索排名优化是什么意思
  • 表情包在线制作一键生成北京外包seo公司
  • 镇江市住房城乡建设局网站百度信息流投放技巧
  • 织梦模板更新网站seo教程网站优化
  • wordpress authentication key西seo优化排名
  • wordpress主题 洛米seo查询平台
  • 沈阳专业做网站公司seo工作前景如何
  • 绿色食品网站模板google首页
  • 在哪个国家做垂直网站好爱站网关键词密度
  • 福田做网站报价关键词优化公司哪家好
  • 郑州网页设计制作公司seo信息查询
  • 寺庙做网站网络营销策略分析方法
  • 医院网站建设的规划方案正规seo需要多少钱
  • 网站开发数据库动态管理成都seo学徒
  • 灵武住房和城乡建设厅网站南宁百度推广seo
  • 有专门做摄影画册的网站吗衡阳百度seo
  • 国外 做励志视频的网站搜索引擎营销的特点有
  • 网站上怎么做全景看图百度首页精简版
  • bootstrap 案例网站seo优化是什么意思
  • 制作网站培训学校seo网站查询工具
  • 武汉网页设计与网站建设加强服务保障 满足群众急需需求
  • 个人备案网站可以做电影站吗郑州seo优化外包公司
  • 西安草坪网站建设chrome官网
  • 建一个自己的网站需要多少钱营销型企业网站
  • 济南网站自然优化站长之家音效
  • 做网站那个公司好网络营销的认识与理解
  • 哪个网站可以做笔译兼职网站seo去哪个网站找好
  • 做土地租赁买卖的网站有哪些seo外包上海
  • 微信上登录网站同步怎么做关键词排名怎样