您现在的位置是:课程
C/C++学习指南系列(Qt界面篇)
2023-06-13 21:02课程 人已围观
课程目标:掌握Qt界面开发相关的核心技术
课程详情:本篇讲解如何使用Qt库进行界面开发,是一个从入门到精通的教程。主要的演示平台为VS2008 + Qt4.7.3,从最简单的例子入手,覆盖Qt界面开发的近乎全部技术点。(自定义Widget、对话框、事件处理Singal & Slot、界面线程与工作线程、数据视图ItemView、拖放操作Drag & Drop、界面美化Qt Style等等) 提供全部示例代码的下载。 (前四章免费)
( 作者乃一介码农,上班族,不从属于任何培训机构,亦不提供任何线下教程,所有课程都在腾讯课堂发布。 望各方面理解,谢谢! )
本教程与Qt5通用,具体请按视频里的介绍,下载阅读相关文档即可。
VS2010 + Qt Addin 1.11 + Qt4.7.3
VS2012 + Qt Addin 1.2.2 + Qt5
VS2013 + Qt Addin 1.2.4 + Qt5
>>>>> 目录 <<<<<<
第1章 开始学习 Getting Started
1.1 Qt开发环境的搭建
1.2 第一个窗口程序HelloWorld
1.3 (补充)Visual Assist X的设置
第2章 初步认识窗体 Know The Widget
2.1 认识各种窗体
2.2 窗口坐标
2.3 定义一个窗口
第3章 窗口的布局 Layout Of Widget
3.1 窗口的布局
3.2 窗口大小调整的策略
3.3 可视化布局
3.4 可视化布局的代码生成过程
3.5 更多布局参数
第4章 事件处理 Handle The Events
4.1 事件处理机制
4.2 connect的几种常见错误写法
第5章 常见控件的基本用法 Usage Of Common Controls
5.1 复选框QCheckBox
5.2 单行文本框QLineEdit
5.3 组合框QComboBox
5.4 工具按钮QToolButton
5.5 QLabel显示文字和图片
第6章 字符串的处理 String In Qt
6.1 拉丁字符集 (ISO 8859)
- 背景知识:C/C++里的中文问题
6.2 中文字符集 (GBK, UnicodeUTF8)
- GBK是常见的中文字符集标准。中文有若干字符集。Unicode汇集了全世界的文字符号。
6.3 VC下字符编码的转换(不是Qt下的转换)
- 介绍在VC下如何在GBK UTF16 UTF8之间转换编码。本章前三节是中文相关的基础知识,新建一个普通的控制台项目来练习,不要新建Qt项目。
6.4 Qt中的字符串类QString
- 当需在Qt中使用中文时,需要注意将GBK字符集转成Qt的Unicode字符集。
第7章 对话框 Dialog
7.1 模式对话框
- 介绍了模式对话框的实现方法。当模式对话框显示时,背景界面处于被阻塞的状态。
7.2 文件对话框
- 文件对话框的使用。实现一个保存文件、编辑文件的例子程序
7.3 Qt项目的目录结构优化【重要】
- 当代码较多时,如何安装Qt下的诸多文件。以及在Qt项目中设置“当前目录”。
7.4 非模式窗口
- 介绍如何创建一个非模式窗口,如搜索框。
第8章 Qt中的多线程技术 Multi-Threading In Qt
8.1 界面线程与工作线程
- 对于GUI程序来说,界面线程是其主线程。当界面事件的处理需要较长时间时,为避免界面阻塞,应该把事情放到工作线程中处理。
8.2 定时器
- 介绍Qt下的定时器Timer的用法。实现了一个文字时钟的例子。定时器不是线程。
8.3 使用工作线程
- 工作线程(后台线程)用于完成具体的任务。为了避免界面阻塞(卡死),创建工作线程来处理任务,并以进度条来显示任务的进度。
8.4 【实战004】抽奖器
- 一个抽奖软件。事先准备好若干手机号码,加载进程序,点抽奖即可滚动抽奖(类似公司年会的抽奖程序)。
第9章 容器窗口 The Containers
9.1 选项卡窗口 QTabWidget
- 是一种窗口的组织方式,将多个页面放在一个容器里,每个页面对应一个标签 。当点击标签时,该页面被显示。
9.2 堆叠窗口 QStackedWidget
- 被广泛用于向导和设置窗口中。
第10章 主窗口 The Main Window
10.1 工具栏和菜单
- 向窗口中添加工具栏和菜单。
10.2 单文档界面
- 介绍单文档界面程序的方法。并实现了一个文本编辑器的例子。
10.3 可停靠窗口
- 展示DockWidget的使用方法
第11章 自定义控件 Customize the Widget
11.1 窗口的绘制(1)基本方法
- 用一个小例子说明如何绘制窗口控件,以及如何使用这个控件。
11.2 窗口的绘制(2)几何图形的绘制
- 介绍几何图形(线、长方形、椭圆)的画法,介绍相关参数Pen和Brush的意义。
11.3 窗口的绘制(3)动画的实现
- 介绍Qt低频动画的实现方法。实例子一个闪烁按钮的例子。
11.4 窗口的绘制(4)文字的绘制
- 介绍如何在自定义窗口中绘制文字。重点解释换行显示、按宽度动态显示技术,并给出例子。
11.5 窗口的绘制(5)图片的绘制
- 介绍如何加载图片文件并绘制到窗口中。其重点技术为“锁定长宽比"绘制。
11.6 鼠标的支持(1)基本概念
- 介绍在自定义控件里支持鼠标事件的方法。实现一个显示鼠标轨迹的例子。
11.7 鼠标的支持(2)发射信号
- 介绍在自定义控件中添加信号的方法。实现一个区域截图的例子。
11.8 【Demo008】屏幕截图(自由选择区域)
- 实现一个可以自由选择区域的屏幕截图程序,并保存为jpg文件。
第12章 树,列表和表格 The Item Views
12.1 列表控件的使用方法(1)
- 列表控件的使用方法(1)
12.2 列表控件的使用方法(2)
- 从Model/View构架角度来使用ListWidget
12.3 列表控件 - 自定义显示
- 介绍如何自定义显示一个列表的数据。比如,添加图标、以及其他多项数据。
12.4 列表控件 - 原位编辑
- 介绍不启动对话框、直接在列表框内修改数据的方法。
12.5 列表控件 - 右键菜单
- 介绍给列表控件添加右键菜单的方法。(快捷菜单、上下文菜单)。此方法也适用于其他控件。
12.6 树形控件与表格控件
- 树控件QTreeWidget用于展示树形数据,如文件目录树。表格控件QTableWidget用于展示表格状的按行列的数据。
12.7 在itemview中添加控件(1)
- 介绍怎么在itemview中为每个item添加控件,例如每行前面加一个checkbox。
12.8 在itemview中添加控件(2)
- 介绍怎么响应控件的请求,例如,在每行中添加一个删除按钮,当点按钮时删除该行。
12.9 【实战002】学生信息管理(基于File的实现)
- 插入实战篇教程002讲:一个基于File的学生信息管理软件。
12.10【实战006】聊天室
- 一个聊天室系统。用于展示Qt与线程、锁、Socket等技术的结合使用。
第13章 拖放技术 Drag & Drop
13.1 接受拖放 Accept a drag
- 介绍如何让窗口程序接收拖放操作。本窗口作为Drag Target。
13.2 发起拖放 Start a drag
- 介绍如何将本窗口的对象拖到其他窗口。(本窗口作为Drag Source)
【实战001】棋盘游戏
- 一个棋类游戏的模板。展示如何实现棋类游戏,在此基础上添加更多游戏和规则就可以成为一个完全的游戏。。
【实战007】拼图游戏
- 实现一个拼图游戏:加载窗格,分成3x3个单元,随机打乱。
第14章 界面的样式(皮肤) Qt Stylesheet
14.1 StyleSheet的基本用法
- 介绍QT样式单的基本用法,介绍的界面皮肤的实现方法。
14.2 StyleSheet的语法 - Selector
- 进一步介绍StyleSheet的语法。
【实战005】密码本
- 一个密码本应用程序。综合各种Qt界面技术。
第15章 杂项 Miscellaneous
15.1 程序图标与系统托盘图标
- 介绍如何添加程序图标。以及如何实现系统托盘图示及菜单处理。
15.2 全局快捷键
- 介绍如何实现全局快捷键。
15.3 【特效】整体可拖动的窗口
- 介绍如何实现一个整体可拖动的窗口。
15.4 【特效】无边框窗口 + 整体背景图片
- 介绍另一种窗口特效:去掉标题栏和边框,使用整体图片作为背景。
第16章 Linux下Qt的使用 Qt Under Linux
16.1 Qt的项目组成
- 介绍Qt的项目的构成。具体的编译方法参考网盘里的PDF文档说明。
课程详情:本篇讲解如何使用Qt库进行界面开发,是一个从入门到精通的教程。主要的演示平台为VS2008 + Qt4.7.3,从最简单的例子入手,覆盖Qt界面开发的近乎全部技术点。(自定义Widget、对话框、事件处理Singal & Slot、界面线程与工作线程、数据视图ItemView、拖放操作Drag & Drop、界面美化Qt Style等等) 提供全部示例代码的下载。 (前四章免费)
( 作者乃一介码农,上班族,不从属于任何培训机构,亦不提供任何线下教程,所有课程都在腾讯课堂发布。 望各方面理解,谢谢! )
本教程与Qt5通用,具体请按视频里的介绍,下载阅读相关文档即可。
支持以下几种组合,本教程通用。如果你决定使用Qt5,请注意在网盘里下载Qt5相关的文档。
VS2008 + Qt Addin 1.10 + Qt4.7.3VS2010 + Qt Addin 1.11 + Qt4.7.3
VS2012 + Qt Addin 1.2.2 + Qt5
VS2013 + Qt Addin 1.2.4 + Qt5
>>>>> 目录 <<<<<<
第1章 开始学习 Getting Started
1.1 Qt开发环境的搭建
1.2 第一个窗口程序HelloWorld
1.3 (补充)Visual Assist X的设置
第2章 初步认识窗体 Know The Widget
2.1 认识各种窗体
2.2 窗口坐标
2.3 定义一个窗口
第3章 窗口的布局 Layout Of Widget
3.1 窗口的布局
3.2 窗口大小调整的策略
3.3 可视化布局
3.4 可视化布局的代码生成过程
3.5 更多布局参数
第4章 事件处理 Handle The Events
4.1 事件处理机制
4.2 connect的几种常见错误写法
第5章 常见控件的基本用法 Usage Of Common Controls
5.1 复选框QCheckBox
5.2 单行文本框QLineEdit
5.3 组合框QComboBox
5.4 工具按钮QToolButton
5.5 QLabel显示文字和图片
第6章 字符串的处理 String In Qt
6.1 拉丁字符集 (ISO 8859)
- 背景知识:C/C++里的中文问题
6.2 中文字符集 (GBK, UnicodeUTF8)
- GBK是常见的中文字符集标准。中文有若干字符集。Unicode汇集了全世界的文字符号。
6.3 VC下字符编码的转换(不是Qt下的转换)
- 介绍在VC下如何在GBK UTF16 UTF8之间转换编码。本章前三节是中文相关的基础知识,新建一个普通的控制台项目来练习,不要新建Qt项目。
6.4 Qt中的字符串类QString
- 当需在Qt中使用中文时,需要注意将GBK字符集转成Qt的Unicode字符集。
第7章 对话框 Dialog
7.1 模式对话框
- 介绍了模式对话框的实现方法。当模式对话框显示时,背景界面处于被阻塞的状态。
7.2 文件对话框
- 文件对话框的使用。实现一个保存文件、编辑文件的例子程序
7.3 Qt项目的目录结构优化【重要】
- 当代码较多时,如何安装Qt下的诸多文件。以及在Qt项目中设置“当前目录”。
7.4 非模式窗口
- 介绍如何创建一个非模式窗口,如搜索框。
第8章 Qt中的多线程技术 Multi-Threading In Qt
8.1 界面线程与工作线程
- 对于GUI程序来说,界面线程是其主线程。当界面事件的处理需要较长时间时,为避免界面阻塞,应该把事情放到工作线程中处理。
8.2 定时器
- 介绍Qt下的定时器Timer的用法。实现了一个文字时钟的例子。定时器不是线程。
8.3 使用工作线程
- 工作线程(后台线程)用于完成具体的任务。为了避免界面阻塞(卡死),创建工作线程来处理任务,并以进度条来显示任务的进度。
8.4 【实战004】抽奖器
- 一个抽奖软件。事先准备好若干手机号码,加载进程序,点抽奖即可滚动抽奖(类似公司年会的抽奖程序)。
第9章 容器窗口 The Containers
9.1 选项卡窗口 QTabWidget
- 是一种窗口的组织方式,将多个页面放在一个容器里,每个页面对应一个标签 。当点击标签时,该页面被显示。
9.2 堆叠窗口 QStackedWidget
- 被广泛用于向导和设置窗口中。
第10章 主窗口 The Main Window
10.1 工具栏和菜单
- 向窗口中添加工具栏和菜单。
10.2 单文档界面
- 介绍单文档界面程序的方法。并实现了一个文本编辑器的例子。
10.3 可停靠窗口
- 展示DockWidget的使用方法
第11章 自定义控件 Customize the Widget
11.1 窗口的绘制(1)基本方法
- 用一个小例子说明如何绘制窗口控件,以及如何使用这个控件。
11.2 窗口的绘制(2)几何图形的绘制
- 介绍几何图形(线、长方形、椭圆)的画法,介绍相关参数Pen和Brush的意义。
11.3 窗口的绘制(3)动画的实现
- 介绍Qt低频动画的实现方法。实例子一个闪烁按钮的例子。
11.4 窗口的绘制(4)文字的绘制
- 介绍如何在自定义窗口中绘制文字。重点解释换行显示、按宽度动态显示技术,并给出例子。
11.5 窗口的绘制(5)图片的绘制
- 介绍如何加载图片文件并绘制到窗口中。其重点技术为“锁定长宽比"绘制。
11.6 鼠标的支持(1)基本概念
- 介绍在自定义控件里支持鼠标事件的方法。实现一个显示鼠标轨迹的例子。
11.7 鼠标的支持(2)发射信号
- 介绍在自定义控件中添加信号的方法。实现一个区域截图的例子。
11.8 【Demo008】屏幕截图(自由选择区域)
- 实现一个可以自由选择区域的屏幕截图程序,并保存为jpg文件。
第12章 树,列表和表格 The Item Views
12.1 列表控件的使用方法(1)
- 列表控件的使用方法(1)
12.2 列表控件的使用方法(2)
- 从Model/View构架角度来使用ListWidget
12.3 列表控件 - 自定义显示
- 介绍如何自定义显示一个列表的数据。比如,添加图标、以及其他多项数据。
12.4 列表控件 - 原位编辑
- 介绍不启动对话框、直接在列表框内修改数据的方法。
12.5 列表控件 - 右键菜单
- 介绍给列表控件添加右键菜单的方法。(快捷菜单、上下文菜单)。此方法也适用于其他控件。
12.6 树形控件与表格控件
- 树控件QTreeWidget用于展示树形数据,如文件目录树。表格控件QTableWidget用于展示表格状的按行列的数据。
12.7 在itemview中添加控件(1)
- 介绍怎么在itemview中为每个item添加控件,例如每行前面加一个checkbox。
12.8 在itemview中添加控件(2)
- 介绍怎么响应控件的请求,例如,在每行中添加一个删除按钮,当点按钮时删除该行。
12.9 【实战002】学生信息管理(基于File的实现)
- 插入实战篇教程002讲:一个基于File的学生信息管理软件。
12.10【实战006】聊天室
- 一个聊天室系统。用于展示Qt与线程、锁、Socket等技术的结合使用。
第13章 拖放技术 Drag & Drop
13.1 接受拖放 Accept a drag
- 介绍如何让窗口程序接收拖放操作。本窗口作为Drag Target。
13.2 发起拖放 Start a drag
- 介绍如何将本窗口的对象拖到其他窗口。(本窗口作为Drag Source)
【实战001】棋盘游戏
- 一个棋类游戏的模板。展示如何实现棋类游戏,在此基础上添加更多游戏和规则就可以成为一个完全的游戏。。
【实战007】拼图游戏
- 实现一个拼图游戏:加载窗格,分成3x3个单元,随机打乱。
第14章 界面的样式(皮肤) Qt Stylesheet
14.1 StyleSheet的基本用法
- 介绍QT样式单的基本用法,介绍的界面皮肤的实现方法。
14.2 StyleSheet的语法 - Selector
- 进一步介绍StyleSheet的语法。
【实战005】密码本
- 一个密码本应用程序。综合各种Qt界面技术。
第15章 杂项 Miscellaneous
15.1 程序图标与系统托盘图标
- 介绍如何添加程序图标。以及如何实现系统托盘图示及菜单处理。
15.2 全局快捷键
- 介绍如何实现全局快捷键。
15.3 【特效】整体可拖动的窗口
- 介绍如何实现一个整体可拖动的窗口。
15.4 【特效】无边框窗口 + 整体背景图片
- 介绍另一种窗口特效:去掉标题栏和边框,使用整体图片作为背景。
第16章 Linux下Qt的使用 Qt Under Linux
16.1 Qt的项目组成
- 介绍Qt的项目的构成。具体的编译方法参考网盘里的PDF文档说明。