第8章 Qt 5模型-视图结构
- 格式:ppt
- 大小:1.47 MB
- 文档页数:42
Qt5MVC模式(⼀)Qt5MVC模式(⼀):概述上By Xchen 20160627MVC设计模式起源于smalltalk的⼀种与⽤户界⾯设计相关的设计模式。
作⽤:有效的分离数据和⽤户界⾯。
组成:模型model(表⽰数据)、视图view(表⽰⽤户界⾯)、控制controller(定义⽤户在界⾯上的操作)。
interView框架Qt的MVC区别:将视图与控制结合在⼀起,同时添加了代理delegate能够⾃定义数据条⽬item的显⽰与编辑⽅式。
组成:模型model(表⽰数据)、视图view(表⽰⽤户界⾯)、代理delegate(⾃定义数据条⽬item的显⽰与编辑⽅式)。
模型与视图结构:模型与数据通信,并提供接⼝视图从模型中获取数据条⽬索引代理绘制数据条⽬通信⽅式:信号&槽⼯作过程:数据改变时,模型发出信号通知视图;⽤户对界⾯操作时,视图发出信号;代理发出信号告知模型和视图编辑器⽬前的状态;模型model(表⽰数据)抽象基类QAbstractItemModel列表的抽象基类QAbstractListModel、表格的抽象基类QAbstractTableModelQDirModel类是⽂件与⽬录的存储模型QStandardItemModel类QStringListModel类视图view(表⽰⽤户界⾯)抽象基类QAbstractItemViewQListView—QListWidget\QUndoViewQTableView—QTableWidgetQTreeView—QTreeWidgetQColumnViewQHeaderView实际上:QListWidget、QTableWidget、QTreeWidget已经包含数据,是模型与视图集成的类代理delegate(⾃定义数据条⽬item的显⽰与编辑⽅式)抽象基类QAbstractItemDelegateQItemDelegate/QStyleItemDelegate类QItemDelegate 由类QSqlRelationDelegate继承实例⼀:⽂件⽬录浏览器截图:创建过程:1. 声明⼀个QDirModel对象model;2. 分别声明三个视图对象QTreeView、QTableView、QListView;3. 设置视图对象的模型为setModel(model);4. 设置视图的选择模式setSelectionMode(QAbstractItemView::MultiSelection);5. 信号槽的连接6. 分隔窗体的设置头⽂件:#include <QApplication>#include <QAbstractItemModel>#include <QAbstractItemView>#include <QItemSelectionModel>#include <QDirModel>#include <QTreeView>#include <QListView>#include <QTableView>#include <QSplitter>QItemSelectionModel类:⽤来设置模型的选择模式的。
Model/View(模型/视图)结构是Qt 中用界面组件显示与编辑数据的一种结构,视图(View)是显示和编辑数据的界面组件,模型(Model)是视图与原始数据之间的接口。
GUI 应用程序的一个很重要的功能是由用户在界面上编辑和修改数据,典型的如数据库应用程序。
数据库应用程序中,用户在界面上执行各种操作,实际上是修改了界面组件所关联的数据库内的数据。
将界面组件与所编辑的数据分离开来,又通过数据源的方式连接起来,是处理界面与数据的一种较好的方式。
Qt 使用 Model/View 结构来处理这种关系,Model/View 的基本结构如图 1 所示。
图 1 Model/View基本结构其中各部分的功能如下:•数据(Data)是实际的数据,如数据库的一个数据表或SQL查询结果,内存中的一个 StringList,或磁盘文件结构等。
•视图或视图组件(View)是屏幕上的界面组件,视图从数据模型获得每个数据项的模型索引(model index),通过模型索引获取数据,然后为界面组件提供显示数据。
Qt 提供一些现成的数据视图组件,如 QListView、QTreeView 和QTableView 等。
•模型或数据模型(Model)与实际数据通信,并为视图组件提供数据接口。
它从原始数据提取需要的内容,用于视图组件进行显示和编辑。
Qt 中有一些预定义的数据模型,如 QStringListModel 可作为 StringList 的数据模型,QSqlTableModel 可以作为数据库中一个数据表的数据模型。
由于数据源与显示界面通过 Model/View 结构分离开来,因此可以将一个数据模型在不同的视图中显示,也可以在不修改数据模型的情况下,设计特殊的视图组件。
在 Model/View 结构中,还提供了代理(Delegate)功能,代理功能可以让用户定制数据的界面显示和编辑方式。
在标准的视图组件中,代理功能显示一个数据,当数据被编辑时,代理通过模型索引与数据模型通信,并为编辑数据提供一个编辑器,一般是一个 QLineEdit 组件。
软件架构设计-五视图法 关于软件架构设计这⾥不再赘述,不清楚的去问度娘。
本篇⽂章主要讲解软件架构设计的五视图法及每种视图如何设计。
⼀、是什么1、逻辑架构 逻辑架构关注的是功能,包含⽤户直接可见的功能,还有系统中隐含的功能。
或者更加通俗来描述,逻辑架构更偏向我们⽇常所理解的“分层”,把⼀个项⽬分为“表⽰层、业务逻辑层、数据访问层”这样经典的“三层架构”。
2、开发架构 开发架构则更关注程序包,不仅仅是我们⾃⼰写的程序,还包括应⽤程序依赖的SDK、第三⽅类库、中间件等。
尤其是像⽬前主流的Java、.NET等依靠虚拟机的语⾔和平台,以及主流的基于数据库的应⽤,都会⽐较关注。
和逻辑架构有紧密的关联。
3、运⾏架构 顾名思义,更关注的是应⽤程序运⾏中可能出现的⼀些问题。
例如并发带来的问题,⽐较常见的“线程同步”问题、死锁问题、对象创建和销毁(⽣命周期管理)问题等等。
开发架构,更关注的是程序运⾏前的⼀些准备⼯作,在静⽌状态下就能规划好做好的,⽽运⾏架构,更多考虑的是程序运⾏后可能发⽣的⼀些问题。
4、物理架构 物理架构,更关注的系统、⽹络、服务器等基础设施。
例如:如何通过服务器部署和配置⽹络环境,来实现应⽤程序的“可伸缩性、⾼可⽤性”。
或者举⼀个实际的例⼦,如何通过设计基础设施的架构,来保障⽹站能⽀持同时10W⼈在线、7*24⼩时提供服务,当超过10W⼈或者低于10W⼈在线时,可以很⽅便的调整部署架构来⽀撑。
5、数据架构 数据架构,更关注的是数据持久化和存储层⾯的问题,也可能会包括数据的分布、复制、同步等问题。
更贴切来讲,如何选择需要的关系型数据库、流⾏的NOSQL,如何保障数据存储层⾯的性能、⾼可⽤性、灾备等等。
很多时候,和物理架构是有紧密联系的,但它更关注数据存储层⾯的,物理架构更关注整个基础设施部署层⾯。
⼆、怎么做(⽰例&⼯具)1、逻辑架构 绘图⼯具:visio、亿图2、开发架构 绘图⼯具:visio、亿图3、运⾏架构 不常⽤,此处不做整理4、物理架构 绘图⼯具:visio、亿图5、数据架构 绘图⼯具:PowerDesigner 三、概要设计模板参考资料:。
qt5 教程Qt5是一个流行的开源C++框架,用于构建跨平台的图形用户界面(GUI)应用程序。
本教程介绍了Qt5的基础知识和常见的使用技巧。
第一部分:引言和安装在本部分中,我们将介绍Qt5的背景和优势,并详细讲解如何在不同操作系统上安装Qt5。
第二部分:Qt5的基本概念本部分将介绍Qt5的核心概念,如QObject、QWidget和信号与槽等。
我们将讲解如何创建、显示和管理基本的UI界面元素。
第三部分:Qt5的布局管理在本部分中,我们将学习Qt5的布局管理器,包括水平布局、垂直布局和网格布局等。
我们还将讲解如何使用布局管理器来自动调整UI界面元素的大小和位置。
第四部分:Qt5的常用控件本部分将介绍Qt5的常见控件,如按钮、标签、文本框和列表框等。
我们将讲解如何创建和使用这些控件,并且介绍它们的常用属性和方法。
第五部分:Qt5的绘图和动画在本部分中,我们将学习Qt5的绘图和动画功能。
我们将介绍如何使用Qt绘制基本图形和进行颜色填充,以及如何创建简单的动画效果。
第六部分:Qt5的文件和数据处理本部分将介绍Qt5的文件和数据处理功能。
我们将讲解如何读写文件、解析和生成JSON、XML和CSV等格式的数据。
第七部分:Qt5的网络编程在本部分中,我们将学习Qt5的网络编程功能。
我们将介绍如何创建基于TCP和UDP的网络连接,并实现简单的客户端和服务器程序。
请注意,本教程是以简要的方式介绍Qt5的基础知识和常见的使用技巧,以供初学者参考。
如果您对Qt5需要更深入的理解或拥有更高级的使用需求,建议参考官方文档或更专业的教程。
qt 5 教程Qt 5 教程
1. 基础知识
- 安装Qt 5
- Qt 5 的主要特性
- Qt Creator 的使用
- Qt 5 的基本语法
2. 窗口应用程序开发
- 创建一个窗口应用程序
- 添加控件和布局
- 信号与槽的使用
- 窗口之间的通信
3. 图形界面设计
- 使用样式表美化界面
- 自定义控件的创建
- 绘图和渲染技巧
4. 数据库操作
- 连接数据库
- 执行SQL查询
- 数据库事务管理
5. 网络编程
- 创建网络客户端
- 创建网络服务器
- 进行网络通信
6. 多线程编程
- 创建线程
- 线程间通信
- 线程同步和互斥
7. 文件操作
- 文件读写
- 目录操作
- 文件压缩和解压缩
8. 插件开发
- 创建Qt插件
- 插件的动态加载与卸载
- 插件的扩展性和灵活性
9. 跨平台开发
- 开发可在不同平台上运行的应用程序 - 处理平台差异性
- 使用Qt的跨平台特性
10. 调试与测试
- 使用Qt Creator进行调试
- 单元测试和自动化测试
- 性能优化和内存泄漏检测
这个Qt 5教程旨在帮助你学习Qt 5的各种功能和用法。
希望能对你的Qt开发之路有所帮助!。
Qt 学习之路2目 录1 序 (1)2 Qt 简介 (2)3 Hello, world! (3)4 信号槽 (9)5 自定义信号槽 (13)6 Qt 模块简介 (18)7 MainWindow 简介 (22)8 添加动作 (25)9 资源文件 (30)10 对象模型 (35)11 布局管理器 (37)12 菜单栏、工具栏和状态栏 (41)13 对话框简介 (44)14 对话框数据传递 (47)15 标准对话框 QMessageBox (49)16 深入 Qt5 信号槽新语法 (53)17 文件对话框 (58)18 事件 (62)19 事件的接受与忽略 (65)20 event() (69)21 事件过滤器 (71)22 事件总结 (74)23 自定义事件 (78)24 Qt 绘制系统简介 (81)25 画刷和画笔 (84)26 反走样 (89)27 渐变 (91)28 坐标系统 (97)29 绘制设备 (104)30 Graphics View Framework (107)31 贪吃蛇游戏(1) (110)32 贪吃蛇游戏(2) (114)33 贪吃蛇游戏(3) (120)34 贪吃蛇游戏(4) (124)35 文件 (127)36 二进制文件读写 (131)37 文本文件读写 (135)38 存储容器 (139)39 遍历容器 (144)40 隐式数据共享 (151)41 model/view 架构 (153)1 序51CTO上面曾经有过这么一个系列,具体是 Qt 的入门教程。
当时强调过,那些文章大致是根据《C++ GUI Programming with Qt 4, 2nd Editon》编写的。
时过境迁,现在回头看看,已经过去了整整三年。
如果你仔细看下那篇系列文章就会发现,发表时间竟然是 2009 年 8 月 20 日;而今天是 2012 年 8 月 20 日。
或者是冥冥之中的感觉,竟然选择了同一个时间。
Qt5.10 GUI完全参考手册作者:黄勇2018-8-18(第一版)出版社:??????前言本书作者:黄邦勇帅(原名:黄勇),QQ:42444472(读者意见可发至QQ)本书需具有C++语言基础,若对C++语言不熟习可参阅《C++语法详解》一书(电子工业出版社,黄勇,2017-6-30)本书适合希望使用Qt C++开发跨平台应用程序的读者阅读。
本书对QWidget的各个子类及其相关的框架结构作了详细的介绍,主要包括,元对象系统,信号和槽,Qt事件,Qt主窗口,布局管理及焦点系统,对话框,模型/视图框架,拖放和剪贴板,Qt文本系统,Qt界面外观,Qt 2D绘图和Qt的输入输出。
本书是一本讲解Qt原理性的书籍,对Qt的各种原理讲解透彻、深入、细致。
书中的示例都是完整的实例程序。
本书章节划分合理,思路清楚,不显得杂乱无章,对每个章节的知识点讲解全面细致,各章节内容不相互重合累缀,方便复习查阅。
相对于其他书而言对Qt的细节原理讲解更透彻简单易懂。
本人能力有限,其中难免有误解之处,望指出更正。
声明:禁止抄袭,复印,转载本书内容,本书作者拥有完全版权。
阅读完本书后,记得给出您对本书的价值哟第1章Qt快速入门目录1.1 Qt简介1.2 Qt Creator的使用1.2.1 qt的下载及安装注意事项1.2.2 Qt Create的界面介绍1.2.3 手动添加套件1.3 使用Qt Creator编写一个C++程序1.3.1 创建一个空项目1.3.2 添加C++代码1.3.3 运行程序1.3.4 使用QtCreator编辑器的一些技巧1.4 使用Qt Creator编写Qt程序1.4.1 方法1:使用代码编写Qt程序1.4.2 方法2:使用界面编辑器(即设计模式)编写Qt程序1.4.3 方法3:使用Qt设计师界面类编写Qt程序1.4.4 方法4:使用“Qt Widgets Application”编写Qt程序1.4.5 方法5:使用记事本及Qt命令程序编写Qt程序1.5 发布程序1.5.1 编译后生成的各种文件简介1.5.2 手动发布程序1.5.3 使用windeployqt工具部署文件(仅限windows)1.5.4 静态编译和动态编译1.6 Qt的重要文件简介1.6.1 项目文件(pro文件)及其语法1.6.2 moc简介1.6.3 pro、pri、prf文件简介1.7 Qt框架结构简介1.7.1 Qt基本框架1.7.2 Qt5模块架构1.8 帮助文档的使用第2章Qt元对象系统、信号和槽及事件目录2.1 元对象系统2.1.1 元对象系统基本概念2.1.2 Q_OBJECT宏2.1.3 使用Qt Creator启动元对象系统2.2.4 在命令行启动元对象系统2.2 元对象2.2.1 QByteArray类简介2.2.2 元对象系统与反射机制2.2.3 使用反射机制获取类对象的成员函数的信息2.2.4 使用反射机制获取与类相关的信息2.3 属性系统2.3.1 属性基础2.3.2 QVariant类2.3.3 使用QObject类中的成员函数存取属性值与动态属性2.3.4 使用反射机制获取属性的信息2.4 信号与槽2.4.1 信号和槽原理2.4.2 创建信号和槽2.4.3 信号和槽的关联(连接)2.4.4 断开信号和槽的关联2.4.5 signals、slots、emit关键字原型2.5 对象树与生命期2.5.1 组合模式与对象树2.5.2 QObject类、对象树、生命期2.6 事件2.6.1 QApplication、QGuiApplication、QCoreApplic2.6.2 Qt对事件的描述及分类2.6.3 事件的传递(或分发)及处理2.6.4 事件的接受和忽略2.6.5 事件过滤器2.6.6 自定义事件与事件的发送2.6.7 事件的传递顺序总结2.6.8 鼠标和键盘事件共同使用的类及函数2.6.9 鼠标事件2.6.10 键盘事件第3章Qt窗口及QWidget类目录3.1 QtWidgets模块及窗口基本概念3.1.1 QtWidgets模块中的类的继承图及帮助文档的使用3.1.2 Qt中窗口的基本概念3.1.3 Qt实现窗口及其部件的原理3.1.4部件构造函数参数f的取值3.1.5 部件的删除3.1.6 QFlags模板类详解3.2 QWidget类3.2.1 基础3.2.2 与部件大小和位置有关的成员3.2.3 窗口大小的限制与默认大小3.2.4 窗口的状态(最大化最小化)3.2.5 窗口的显示及可见性3.2.6 标题、透明度、启用、禁用3.2.7 窗口标志、设置其他属性3.2.8 获取窗口部件、设置父部件3.2.9 鼠标光标3.2.10 其他第4章Qt常用部件目录4.1 按钮部件4.1.1 共同特性4.1.2 QAbstractButton抽象类4.1.3 QPushButton类(标准按钮)4.1.4 QCheckBox类(复选按钮)4.1.5 QRadioButton类(单选按钮)4.1.6 QToolButton类(工具按钮)4.2 容器部件4.2.1 QDialogButtonBox按钮框4.2.2 QButtonGroup按钮组4.2.3 QGroupBox组框4.3 带边框的部件4.3.1 QFrame类4.3.2 QLabel标签4.3.3 QLCDNumberLCD数字4.4 输入部件4.4.1 QComboBox下拉列表、组合框4.4.2 QLineEdit行编辑器4.4.3 QValidator抽象类、验证器及其子类4.5 旋转框、微调按钮4.5.1 QAbstractSpinBox旋转框或微调框4.5.2 QSpinBox类4.5.3 QDoubleSpinBox类4.6 时间系统4.6.1 时间系统基础4.6.2 QDate类4.6.3 QTime类4.6.4 QDateTime类4.6.5 QDateTimeEdit类4.6.6 QDateEdit类和QTimeEdit类4.6.7 QTimer计时器4.6.8 QCalendarWidget日历部件公用枚举第5章Qt布局管理及焦点系统目录5.1布局原理5.1.1 布局基础5.1.2 部件拉伸(Stretch)原理及大小策略5.1.3 大小约束(主窗口最大最小大小的设置)5.1.4 内容边距(ContentsMargins)、间距(spacing)、QSpace5.1.5 嵌套布局及布局位于容器中5.2 各布局管理器类5.2.1 QBoxLayout及其子类(盒式布局)5.2.2 QGridLayout类(网格布局)5.2.3 QFormLayout类(表单布局)5.3 实现多页面切换5.3.1 QStackedLayout类(分组布局或栈布局)5.3.2 QStackedWidget类5.3.3 QTabBar类(选项卡栏)5.3.4 QTabWidget类(选项卡部件)5.4 QSplitter分离器(或分隔符)5.4.1 QSplitter类(分离器)5.4.2 QSplitterHandle类(分界线)5.5 自定义布局管理器5.5.1 QLayout抽象类中的公有成员函数5.5.2 QLayoutItem、QSpacerItem、QWidgetItem类5.5.3 自定义布局的实现5.6 Qt焦点系统5.6.1 焦点链(焦点循环)5.6.2 获取焦点信息5.6.3 焦点代理(FocusrProxy)5.6.4 设置焦点及焦点策略5.6.5 焦点事件5.6.6 自定义焦点循环5.6.7 QFocusFrame类(焦点框,自定义焦点框的外形)本章公用枚举第6章Qt对话框目录6.1 QDialog类(对话框)6.1.1 对话框与窗口6.1.2 模态与非模态对话框6.1.3 对话框返回的信息6.1.4 对话框与窗口的关闭和隐藏6.2 QMessageBox类(消息对话框)6.3 QErrorMessage类(错误消息对话框)6.4 QColorDialog类(颜色对话框)6.5 QFontDialog类(字体对话框)6.6 QFileDialog类(文件对话框)6.6.1 文件对话框基础6.6.2 QFileDialog类中的属性6.6.3 文件过滤器6.6.4 QFileDialog类中的函数6.6.5 QFileDialog类中的信号6.7 QInputDialog类(输入对话框)6.7.1 输入对话框基础6.7.2 QInputDialog类中的属性6.7.3 QInputDialog类中的函数6.7.4 QInputDialog类中的信号6.8 QProgressDialog类(进度对话框)和QProgressBar(进度条)6.8.1 进度条原理6.8.2 QProgressDialog类(进度对话框)6.8.3 QProgressBar类(进度条)6.9 QWizard类(向导)和QWizardPage类(向导页)6.9.1 向导基础6.9.2 向导外观6.9.3 向导中的按钮6.9.4 向导中的页面6.9.5 验证页面中的内容6.9.6 各页面间的通信(字段)6.9.7 实现非线性向导6.9.8 QWizard类中的属性6.9.9 QWizard类中的函数6.9.10 QWizardPage类中的属性和函数第7章Qt主窗口目录7.1 QMainWindow类主窗口基础7.2 QMenu类、QMenuBar类、QAction类基础7.2.1 基本概念7.2.2 创建菜单的方法7.2.3 部件的所有权7.2.4 QAction动作基础7.3 QShortcut类、快捷键7.3.1 快捷键基础7.3.1 QShortcut类中的属性7.3.2 QShortcut类中的函数7.4 QKeySequence类、键序列7.4.1 键序列基础7.4.2 QKeySequence类中的枚举7.4.3 QKeySequence类中的函数7.5 QAction类、QActionGroup类7.5.1 动作基本规则7.5.2 QAction类中的属性7.5.3 QAction类中的函数7.5.4 QAction类中的槽和信号7.5.5 QWidget类中与QAction有关的函数7.5.6 QActionGroup类动作组7.6 QMenu类、菜单7.6.1 菜单基本规则7.6.2 QMenu类中的属性7.6.3 QMenu类中的函数7.7 QMenuBar类、菜单栏7.7.1 菜单栏基本规则7.7.2 QMenuBar类中的属性7.7.3 QMenuBar类中的函数7.8 QToolBar类、工具栏7.8.1 工具栏基本规则7.8.2 QToolBar类中的属性7.8.3 QToolBar类中的函数7.8.4 QToolBar类中的信号7.9 QStatusBar类、状态栏7.9.1 状态栏基本规则7.9.2 QStatusBar类中的属性7.9.3 QStatusBar类中的函数7.10 QDockWidget类、可停靠窗口、悬浮窗口7.10.1 可停靠窗口基本规则7.10.2 QDockWidget类中的属性7.10.3 QDockWidget类中的函数7.10.4 QDockWidget类中的信号7.11 QMainWindow类、主窗口7.11.1 QMainWindow类中的属性7.11.2 QMainWindow类中的函数7.11.3 QMainWindow类中的信号第8章Qt模型、视图框架目录第1篇自定义模型/视图框架8.1 模型、视图原理8.2 模型:QAbstractItemModel类8.3 视图:QAbstractItemView类(视图基类)8.4 选择:QItemSelectionModel类与QItemSelection类8.5 委托:QAbstractItemDelegate与QStyleOptionViewItem8.6 索引:QModelIndex类8.7 自定义视图示例第2篇Qt实现的标准模型/视图框架相关类8.8 标准模型:QStandardItemModel类及QStandardItem类8.9 列表模型:QAbstractListModel类、QAbstractTableModel类、QStringListModel类8.10 文件系统模型:QFileSystemModel类8.11 表格视图:QTableView类8.12 列表视图:QListView类8.13 树视图:QTreeView类8.14 标头视图:QHeaderView类8.15 列视图:QColumnView类8.16 项目委托:QStyleItemDelegate类第3篇使用现成的模型/视图部件8.17 表格部件:QTableWidget类8.18 列表部件:QListWidget类8.19 树部件:QTreeWidget类第9章Qt拖放、剪贴板9.1 拖放原理9.1.1 拖放基本原理9.1.2 拖放动作或称为放置动作9.1.3 使用拖放打开文件9.2 与拖放事件有关的类及函数9.2.1 QDropEvent类9.2.2 QDragMoveEvent类9.2.3 QDragEnterEvent类和QDragLeaveEvent类9.2.4 QWidget类中与拖放有关的函数9.3 QDrag类9.4 QMimeData类与拖放自定义类型数据9.4.1 基本规则9.4.2 QMimeData类中的函数9.4.3 子类化QMimeData9.4.4 重新实现QMimeData类中的虚函数9.5 QClipboard类(剪贴板)第10章Qt滚动目录10.1 滚动条、滑块(QAbstractSlider类、QSCrollBar类、QSlider类)10.1.1 基本原理10.1.2 最大、最小值和步长10.1.3 跟踪Tracking与当前值Value、当前位置Position10.1.4 QAbstractSlider类中的属性和函数10.1.5 QAbstractSlider类中的信号10.1.6 QScrollBar类10.1.7 QSlider类10.1.8 QDial类10.2 QScrollArea类、(滚动区域)10.3 QAbstractScrollArea类(抽象滚动区域)10.3.1 QAbstractScrollArea类中的属性10.3.2 QAbstractScrollArea类中的函数10.3.3 自定义滚动区域第11章Qt文本系统目录11.1 重要基本概念及原理11.2 QPlainTextEdit类11.3 QTextEdit类11.4 表格:QTextTable和QTextTableFormat类11.5 框架:QTextFrame和QTextFrameFormat类11.6 文本块:QTextBlock、QTextBlockFormat类11.7 列表:QTextList、QTextListFormat类11.8 图像:QTextImageFormat类和文本片段:QTextFragment类11.9 插入自定义文档对象(文档元素)与总结11.10 QTextCharFormat类及QTextFormat和QTextObject类简介11.11 QTextCursor类11.12 QTextDocument类11.13 其他类:QTextOption、QTextDocumentFragment等11.14 语法高亮:QSyntaxHighlighter类第12章Qt 2d绘图目录12.1 二D绘图基础12.2 绘制直线与QLineF类12.3 绘制矩形与QRectF类12.4 绘制椭圆、弧、弦、扇形、圆角矩形12.5 绘制点、折线、多边形(QPolygonF类)12.6 QPainterPath类(路径)12.7 绘制文本12.8 QPen类(画笔)12.9 QBrush类(画刷)与渐变(QGradient类及其子类)12.10 填充12.11 裁剪区域(QRegion类)12.12 坐标变换(QTransform类)12.13 绘制图像(QImage、QPixmap、QBitmap)12.14 抗锯齿和图像合成第13章Qt界面外观13.1 简单的使用QStyle类13.1.1样式基础13.1.2 QStyleFactory类及其函数13.2 QPalette类(调色版)13.3 自定义部件的外观13.4 子类化QStyle13.4.1 样式元素13.4.2 样式绘制函数13.4.3 子类化QStyle类的方法13.5 QStyle类的其他枚举及成员函数13.5.1 QStyle::PixMetric枚举及相关成员函数13.5.2 QStyle::StandardPixmap枚举及相关成员函数13.5.3 QStyle::StyleHint枚举及相关成员函数13.5.4 其他枚举及相关成员函数13.5.5 QStyle类中的其他成员函数13.6 QStyle类中枚举的总结13.7 QStyleOption(样式选项)及其子类13.8 样式表13.8.1 样式表基础13.8.2 样式表语法基础13.8.3 选择器13.8.4 子控件13.8.5 伪状态13.9 样式表的属性13.9.1 背景色、前景色、所选文本的颜色13.9.2 盒子模型及相关属性13.9.3 与位置和大小有关的属性13.9.4 字体、文本、图标、图像、不透明度属性13.9.5 其他属性13.9.6 属性类型13.10 设置各部件样式表的方法(综合示例)13.10.1 基本规则13.10.2 设置各部件样式表的方法13.11 样式表的其他规则13.11.1 层叠和继承13.11.2 名称空间及使用QObject属性13.11.3 冲突解决第14章Qt输入/输出(暂定)14.1 QDataStream类(数据流)14.2 QTextStream类(文本流)14.3 QFile类14.4 QDir类本文作者:黄邦勇帅(原名:黄勇)本文要求读者已经非常熟悉C++的语法,若读者不熟悉C++语法,推荐参阅《C++语法详解》(作者:黄勇)一书,电子工业出版社出版。