
Qt6入门教程
文章平均质量分 93
这几年写了一些Qt相关的博客,但从未写过Qt入门教程,一是没那么多时间,二是简单的东西反而难写。今年开始尝试,希望能坚持下去。
不会是Qt Asistant的简单翻译,会融合自己工作经验在里面,Qt博大精深,实际上也是边写边学的过程。
草上爬
专注技术,热爱分享
展开
-
Qt6入门教程 15:QRadioButton
QRadioButton控件提供了一个带有文本标签的单选按钮。QRadioButton是一个可以切换选中(checked)或未选中(unchecked)状态的选项按钮。单选按钮运行用户多选一,也就是说,在一组单选按钮中,每次只有一个能选中,如果用户选择了另一个,那么之前那个就会切换到未选中状态。单选按钮默认开启自动互斥(autoExclusive)。如果启用了自动互斥,属于同一个父部件的单选按钮的行为就和属于一个互斥按钮组的一样。原创 2024-02-02 01:33:31 · 3860 阅读 · 75 评论 -
Qt6入门教程 14:QToolButton
QToolButton可以提供一个弹出菜单,使用setMenu()来进行设置。通过setPopupMode()来设置菜单的弹出模式,缺省模式是DelayedPopupMode,这个特征通常用于网页浏览器的“后退”按钮,在按下按钮一段时间后,会弹出一个可以跳转的页面列表,默认延迟600毫秒,可以用QStyle::SH_ToolButton_PopupDelay进行调整。设置默认的QAction,如果有一个默认的action,该action则会定义QToolButton的文本、图标、TooTip等按钮的属性。原创 2024-01-31 08:17:17 · 2934 阅读 · 56 评论 -
Qt6入门教程 13:QPushButton
QPushButton是与QAbstractButton最接近的完全体按钮,它具备QAbstractButton的所有特性,并且支持设置菜单。原创 2024-01-29 00:48:42 · 2798 阅读 · 57 评论 -
Qt6入门教程 12:QAbstractButton
继承QAbstractButton,你至少得重新实现paintEvent()来绘制按钮的外形、文本和图标。通常也建议重新实现sizeHint(),某些情况下还得重新实现hitButton()(判断鼠标是否在按钮区域内)。下面的代码中集成QAbstractButton实现了MyButton,重新实现了paintEvent。在paintEvent中绘制文本颜色为白色,按钮底色为蓝色(鼠标按下或按钮选中时为红色)。代码中涉及的绘图和布局知识后面会单独介绍。原创 2024-01-28 12:51:47 · 3052 阅读 · 25 评论 -
Qt6入门教程 11:父子对象关系
Qt的对象模型提供了一种Qt对象之间的父子关系,当很多个对象都按一定次序建立起来这种父子关系的时候,就组织成了一颗树。当delete一个父对象的时候,Qt的对象模型机制保证了会自动的把它的所有子对象,以及孙对象,等等,全部delete,从而保证不会有内存泄漏的情况发生。在每一个Qt对象中,都有一个链表,这个链表保存有它所有子对象的指针。当创建一个新的Qt对象的时候,如果把另外一个Qt对象指定为这个对象的父对象,那么父对象就会在它的子对象链表中加入这个子对象的指针。原创 2024-01-25 22:07:38 · 3270 阅读 · 106 评论 -
Qt6入门教程 10:菜单栏、工具栏和状态栏
用Qt Creator新建基于QMainWindow的项目时,会自带菜单栏和状态栏。还是以前面的HelloWorld项目为例,通过Qt Designer和纯手写两种方式来添加或移除菜单栏、工具栏和状态栏。原创 2024-01-23 19:38:03 · 15417 阅读 · 30 评论 -
Qt6入门教程 9:QWidget、QMainWindow和QDialog
在用Qt Creator创建Qt Widgets项目时,会默认提供三种基类以供选择,它们分别是QWidget、QMainWIndow和QDialog,其中QMainWindow和QDialog的基类都是QWidget。原创 2024-01-21 23:35:15 · 4851 阅读 · 52 评论 -
Qt6入门教程 8:信号和槽机制(连接方式)
信号和槽机制(连接方式),即五个参数,共有五种,分别是Qt::AutoConnection、Qt::DirectConnection、Qt::DirectConnection、Qt::QueuedConnection、Qt::BlockingQueuedConnection和Qt::UniqueConnection原创 2024-01-17 20:30:44 · 3999 阅读 · 28 评论 -
Qt6入门教程 7:信号和槽机制(原理和优缺点)
信号和槽用于对象之间的通信。信号和槽机制是Qt的核心机制,也是Qt不同于其他框架的最突出的特征。Qt的元对象系统使信号和槽成为可能。本文将介绍其原理和优缺点。原创 2024-01-17 00:54:41 · 6993 阅读 · 17 评论 -
Qt6入门教程 6:Qt元对象系统
Qt中的元对象系统(Meta-Object System)提供了对象间通信的信号和槽机制、运行时类型信息和动态属性系统。元对象系统是基于以下3个条件的:●该类必须继承自QObject类;●必须在类的私有声明区声明Q_OBJECT宏(在类定义时,如果没有指定public或者private,则默认为private);●元对象编译器Meta-Object Compiler(moc),为QObject的子类实现元对象特性提供必要的代码。原创 2024-01-15 22:44:55 · 3407 阅读 · 29 评论 -
Qt6入门教程 5:添加资源和应用程序图标
Qt6入门教程 5:添加资源和应用程序图标。Qt资源系统是一种平台无关的机制,它将二进制文件存储到可执行文件中。当你的程序需要一系列文件(图标、翻译文件等等),而又不想这些文件有丢失的风险时,这种机制是非常给力的。前面创建了一个最简单的HelloWorld程序,略显简陋,下面给它添加标题栏图标和exe图标美化一下。原创 2024-01-14 15:59:20 · 5226 阅读 · 4 评论 -
Qt6入门教程 4:Qt Creator常用技巧
在上一篇中,通过创建一个Qt项目,对Qt Creator已经有了比较直观的认识,本文将介绍它的一些常用技巧。Qt Creator启动后默认显示欢迎页面创建项目已经用过了,打开项目也很简单,就是打开一个已经存在的项目。项目历史记录非常有用,能快速打开最近使用过的项目。会话记录及管理不知道是干啥的,平时也用不到。Get Started、示例和教程一看就是些学习资料,不过都是英文的,搭配百度翻译自学效率更高哦。编译、运行及调试在上篇中已做介绍。原创 2024-01-07 18:15:29 · 4802 阅读 · 48 评论 -
Qt6入门教程 3:创建Hello World项目
程序员的职业生涯都是从一声问候开始的,我们的第一个Qt项目也是HelloWorld首先要说明的是,IDE不一定要用Qt Creator,用Visual Studio、VSCode、CLion也可以搭建Qt开发环境,它们都相应的插件来支持Qt开发。当然这些IDE没有高低贵贱之分,纯属个人习惯而已,我平时就是Qt Creator做开发的,而且作为Qt教程,不用官方提供的开发工具来演示,也不太合适啊。Qt 6.6.1自带的Qt Creator版本是12.0.1,打开后默认显示欢迎界面。原创 2024-01-06 19:28:48 · 4843 阅读 · 36 评论 -
Qt6入门教程 2:Qt6下载与安装
Qt6入门教程 2:Qt6下载与安装原创 2024-01-06 01:36:11 · 25929 阅读 · 50 评论 -
Qt6入门教程 1:Qt简介
Qt是一个跨平台的C++图形用户界面(GUI)应用程序框架,它为应用该程序开发者提供建立艺术级图形界面所需的所有功能,它是完全面向对象的,很容易扩展,并且允许真正的组件编程。原创 2016-11-14 09:43:49 · 19549 阅读 · 2 评论