[Qt] 组件

组成一个Qt应用的基本元素
窗口(window):一个部件没有嵌入其他部件中,就把这个部件叫做窗口或顶层窗口,顶层窗口没有父窗口
控件(widget):一个窗口嵌入到其他窗口中,这些窗口就叫做控件或子窗口,它本身的标题栏会被隐藏
菜单栏(menu):位于窗口最上方,点击一个会下拉显示许多选项
工具栏(toolbar):位于菜单栏下方,有很多小按钮,类似快捷键
状态栏(statusbar):位于窗口最下方,显示窗口当前的状态信息
Qt中的三种顶层窗口:QWidget、QDialog、QMainWindow
QWidget:最基础的窗口,所有窗口及控件都继承QWidget
QDialog:以独立窗口显示的对话框,如下图cad中的对话框
QMainWindow:带有菜单栏、工具栏、状态栏的主窗口,以独立窗口显示
QMdiSubWindow:为QMdiArea提供一个子窗体,用于MDI(多文档)应用程序的设计


信号(Signal):在特定情况下被发射的事件,如鼠标单击的clicked()信号
槽(Slot):对信号响应的函数,与一般函数的不同在于,可以与一个信号关联,当信号被发射时,关联的槽函数被自动执行
QAction:在界面设计时创建Action,编写其trigger()信号的槽函数,可用于创建菜单项、工具栏选项
QToolBar:工具栏,可在右上角的对象浏览器中右击主窗口添加
QMenu:菜单栏
QStatusBar:状态栏
QDockWidget:悬停窗口
QLabel:显示字符串
QLineEdit:输入字符串
QString:定义字符串
QSlider:滑动条
QScrollBar:卷滚条
QProgressBar:进度条
QDial:表盘式输入
QLCDNumber:模仿LCD显示组件
QTimer:时间数据类型
QDate:日期数据类型
QDateTime:日期时间数据类型
QMainWindow:主窗体
QAction:用于创建菜单栏、工具栏按钮,点击一个按钮时会触发响应的槽函数
QToolBox:多组工具箱
QSplitter:分隔条
QDialog:
项(Item)
试图(View)
模型数据(Model Data)
Item Views(QListView、QTreeView)
Item Widgets(QListWidget、QTreeWidget、QTableWidget):将数据存储在每个项里
QListWidget:多界面设计
QTabWidget:多页面设计,下图右侧是有3个页面的TabWidget组件
QToolBox:多组工具箱,下图左侧是有3个组的ToolBox组件
QToolButton:按钮,下图中的方块
QPushButton:

MDI
多文档界面(Multi-document Interface):在主窗口里创建多个同类型子窗口,子窗口共享主窗口上的工具栏和菜单栏,主窗口上的操作针对当前活动的子窗口进行
[Qt] 组件的更多相关文章
- Qt组件中的双缓冲无闪烁绘图
双缓冲绘图在Qt4中,所有的窗口部件默认都使用双缓冲进行绘图.使用双缓冲,可以减轻绘制的闪烁感.在有些情况下,用户要关闭双缓冲,自己管理绘图.下面的语句设置了窗口部件的Qt::WA_PaintOn ...
- Qt——组件位置随窗口变化
当我们用Qt Designer设计界面时,有时会面临这样一个问题:需要在窗口指定位置放置组件,并且当窗口位置大小改变时,该组件相对其父对象的位置是不变的,如下面两幅图所示 ,首先看上面这幅图,注意bu ...
- 自定义Qt组件-通讯模块(P1)
通讯模块Communicator 通讯模块是整个项目设计中位于最底层的模块,用于处理与串口或网络等设备的通讯,所有设备的通讯通过CommManager类完成,上层软件设计时需要根据comm模块(主要是 ...
- 自定义Qt组件-通讯模块(P3)
1. 半双工模式实时检测串口 ComHalfDuplex类是为了解决上位机发送控制指令和下位机发送数据会在半双工RS485总线中产生冲突引起乱码而引入的(v0.010版本引入). 解决冲突的原理主 ...
- Qt组件(例如按钮、树形控件)上响应鼠标右键
ui->textEdit->setContextMenuPolicy(Qt::CustomContextMenu); connect(ui->textEdit,SIGNAL(cust ...
- QT组件与std性能
https://blog.csdn.net/zy19940906/article/details/53694909
- 自定义Qt组件-通讯模块(P2)
1. 抽象协议AbstractProtocol 抽象协议AbstractProtocol定义CommManager与协议之间的接口.AbstractProtocol中的一些属性(如enabled)用 ...
- QT使用提升自定义组件
QT使用提升自定义组件 QTC++QT自定义 QT 组件提升来实现自定义功能 介绍 我们在使用QT设置界面之后,往往需要自己实现一些方法,如果是单独 的还好,但是如果遇到很多同类型的都有需求, 比如 ...
- QT 文件对话框(QFileDialog)
1.选择文件(上传.打开...) QString QFileDialog::getOpenFileName( QWidget *parent = , //parent,用于指定父组件.注意,很多Qt组 ...
随机推荐
- TypeError: 'list' object cannot be interpreted as an integer Python常见错误
想要通过索引来迭代一个list或者string的元素, 这需要调用 range() 函数.要记得返回len 值而不是返回这个列表.
- 用优先队列构造Huffman Tree及判断是否为最优编码的应用
前言 我们知道,要构造Huffman Tree,每次都要从堆中弹出最小的两个权重的节点,然后把这两个权重的值相加存放到新的节点中,同时让这两个节点分别成为新节点的左右儿子,再把新节点插入到堆中.假设节 ...
- 盘点 Django 展示可视化图表的多种方式(建议收藏)
1. 前言 大家好,我是安果! 使用 Django 进行 Web 开发时,经常有需要展示图表的需求,以此来丰富网页的数据展示 常见方案包含:Highcharts.Matplotlib.Echarts. ...
- nginx 本地配置(解决跨域问题)
前端做跨域本身就是扯淡的事情.后台人员不配合说什么都是白搭.索性整理了一下心得,(可以直接部署自配置)发不多说上代码: 1 #user nobody; 2 worker_processes 1; 3 ...
- BUAA_2020_OO_UNIT3_REVIEW
OO第三单元总结 1. JML语言的理论基础.应用工具链情况 1.1 JML理论基础 我觉得就是<离散数学>中的数理逻辑 由于我的<离散数学>是速成的,导致我不会写规格,只能勉 ...
- Spring(七)SpringMVC的文件上传
1-SpringMVC的请求-文件上传-客户端表单实现(应用) 表单项type="file" 表单的提交方式是post 表单的enctype属性是多部分表单形式,及enctype= ...
- Java刷题-tree
一.分别按照二叉树先序,中序和后序打印所有的节点. 这道题就是书上的算法思想的实际使用,唯一需要特别注意到的是用递归的方式建树,还是比较巧妙的,因为一棵树的建立过程字符流是重复使用的,用递归的方式对根 ...
- Java(232-245)【Collection、泛型】
class GenericInterfaceImpl2<I> implements GenericInterface<I> { @Override public void me ...
- Java on Visual Studio Code的更新 – 2021年3月
欢迎来到Java的VS Code更新.在过去的几个月中,我们的工程师一直在专注于一些非常重要的工作.现在,是时候揭开面纱了,开始吧. 类型层次结构(Type hierarchy) VS Code已经支 ...
- day11.迭代器与生成器
一.迭代器 1.迭代器即用来迭代取值的工具,而迭代是重复反馈过程的活动,其目的通常是为了逼近所需的目标或结果,每一次对过程的重复称为一次"迭代",而每一次迭代得到的结果会作为下一次 ...