本文链接 https://doc.qt.io/qt-5/reference-overview.html
打开 Qt Creator (我下载的版本是 4.10.1)在弹出的界面中, 项目列表中选择 Application
右边可选择内容
Qt console Application:用于non-gui的application , 新建保存文件类型 main.cpp 和 xxxx .pro
打开main.cpp 修改后,运行后的是cmd界面.
Qt widgets Application:Qt Widgets Application 是传统的c++ , 首先学习. 选择另存新文档
*1)如果不勾选 Generate Form ,产生4个文档
main.cpp / mainwindow.cpp / mainwindow.h / xxxx.pro*
*2)如果勾选 Generate Form,产生5个文档
main.cpp / mainwindow.cpp / mainwindow.h / xxxx.pro/ mainwindow.ui*
Qt for Python - Empty:不学习
Qt for Python -window:不学习
Qt Quick Application - Empty:创建空的Qt快速应用,包含QML和c++代码
Qt Quick Application - Scroll:使用滚动视图类型来实现一个可滚动列表视图
Qt Quick Application - Stack:使用StackView类型与基于堆栈的导航模型实现一组页面
Qt Quick Application - Swipe:使用SwipeWiew与swipe-based类型来实现一组页面导航模型
在弹出的界面中, 项目列表中选择 Libray 右边可选择内容
C++ Libray:创建一个C ++库
Qt Quick 2 Extension Plugin:创建一个C ++插件,以使用QQmlEngine类将扩展动态加载到应用程序中
Qt Creator 插件:创建一个自定义Qt Creator插件*
在弹出的界面中, 项目列表中选择 其他项目 右边可选择内容
Qt4 设计师自定义控件:创建一个Qt设计师自定义控件或者一个自定义控件集合。
Qt Quick UI Prototype:纯粹QML 的工程项目,可以用qmlscene 运行查看qml的设计结果
Auto Test Project:创建一个新的测试项目。可以验证该代码适合使用
子目录项目:创建一个基于qmake 的子目录项目。这可以让您将项目组织成树形结构。
Empty qmake Project:创建一个基于qmake的项目,不包含任何文件.创建没有任何默认类的应用程序。
Code Snippet:创建一个基于qmake的测试项目,可以为其输入代码段。
在弹出的界面中, 项目列表中的 Non-Qt Project 和 import Project 现在不进行学习, 所以不进行描述
新建文件和列表中有文件和类选项 , 选择 C++
C++ Class ( C++ 类)
C++ Source File ( C ++源文件)
C++ Header File ( C ++头文件)
列表中文件和类选项的 Modeling
State Chart ( 状态 )
Model ( 模型 )
Scratch Model ( 使用临时文件创建临时模型)
列表中文件和类选项的 Qt
Qt Item Model: 创建 Qt Item model
Qt 设计师界面类: 创建一个Qt设计师窗体文件和相应的类(C++头文件和源文件),可以将此窗体文件和类加入到已经存在的Qt 控件项目中
Qt Designer From: 创建一个Qt Designer表单,可以将其添加到Qt Widget项目中
Qt Resource File:创建一个Qt资源文件(.qrc)
QML File(qt quick2):从“ import QtQuick 2.0”开始,创建带有样板代码的QML文件
Qt Quick UI File:创建Qt Quick Designer UI表单以及匹配的QML文件以用于实现目的, 可以将表单和文件添加到现有的Qt Quick Project中
JS File:创建一个JavaScript文件
列表中文件和类选项的 GLSL
Fragment Shader(OpenGL/ES 2.0)
Vertex Shader(OpenGL/ES 2.0)
Fragment Shader(Desktop OpenGL)
Vertex Shader(Desktop OpenGL)
列表中文件和类选项的 General
Empty File
Scratch Buffer
列表中文件和类选项的 Python
Python Class
Python File
文件和类中的从GLSL 到 Python 部分, 现在应该不会用到, 所有没有学习。
在Qt5 官方给出的list 的基本模块共有13个。
模块名称 | 说明 |
---|---|
Qt Core | 核心模块。所有其他Qt模块都依赖于这个模块 |
Qt GUI | 图形用户界面(GUI)组件的基类(包括OpenGL) |
Qt Widgets | 扩展带C++组件的Qt GUI的类 |
Qt Multimedia | 多媒体功能的类。 |
Qt Multimedia Widgets | 实现多媒体功能的基于widget类 |
Qt QML | QML 和 JavaScript 的类 |
Qt Quick | 可以用自定义用户界面实现动态的应用程序的声明性框架。 |
Qt Quick Controls | 轻量级QML类型。用于为台式机,嵌入式和移动设备创建高性能的用户界面。这些类型采用简单的样式架构 |
Qt Quick Dialogs | 用于来自Qt Quick应用系统对话框的创建和交互的类型。 |
Qt Quick Layouts | 布局是道具组件,用于在用户接口中的排列基于组件的Qt Quick2。 |
Qt Test | 用于单元测试Qt应用程序和库的类。 |
Qt SQL | 使用SQL进行数据库集成的类。 |
Qt Network | 便于网络编程的类,可移植。 |
模块名称 | 开发平台 | 目标平台 | 说明 |
---|---|---|---|
Active Qt | Windows | Windows | 使用ActiveX和COM的app的类 |
Qt 3D | All | All | 支持2D和3D渲染的近实时仿真系统的功能 |
Qt Android Extras | All | Android | 提供适用于Android的平台特定的API |
Qt Bluetooth | All | Android, iOS, Linux, macOS, and UWP (*) | 提供对蓝牙硬件的访问 |
Qt Concurrent | All | All (*) | 用于编写不带使用了低级线程原语的多线程编程的类 |
Qt D-Bus | All | All (*) | 通过D-Bus协议进行进程间通信的类 |
Qt Gamepad | All | Android, iOS, macOS, tvOS (including the tvOS remote), Linux, Windows, and QNX | 使Qt应用程序支持游戏手柄硬件 |
Qt Graphical Effects | All | All | 与Qt Quick 2一起使用的图形效果 |
Qt Help | All | All (*) | 用于将文档集成到应用程序中的类,类似于Qt Assistant |
Qt Image Formats | All | All | 其他图像格式的插件:TIFF,MNG,TGA,WBMP图像格式的插件 |
Qt Location | All | All | 在QML应用程序中显示地图,导航和放置内容 |
Qt Mac Extras | All | macOS | 为macOS提供平台特定的API |
Qt NFC | All | Android and Linux(*) | 提供对NFC硬件的访问 |
Qt OpenGl(Deprdcated) | All | Android and Linux(*) | OpenGL支持类。 不推荐使用Qt GUI模块中的QOpenGL *类 |
Qt Platform Headers | Qt for Windows, Linux, macOS | Qt for Windows, Linux, macOS, Android (*) | 提供封装平台特定信息的类,这些类与平台插件的给定运行时配置相关联 |
Qt Positioning | All | Android, iOS, macOS, Linux, UWP (*). | 提供对位置,卫星和区域监视类的访问 |
Qt Print Support | All | All (*) | 提供对打印的类 |
Qt Purchasing | All | Android, iOS, and macOS | Qt应用程序中产品的应用程序内购买启用 |
Qt Quick Controls 1 (Deprecated) | All | All (*) | 基于可重用的Qt Quick的UI控件可创建经典的桌面样式用户界面。 不推荐使用Qt Quick Controls 2 |
Qt Quick Extras | All | All (*) | 提供一组专门的控件,可用于在Qt Quick中构建界面 |
Qt Quick Widgets | All | All (*) | 提供用于显示Qt Quick用户界面的C ++ 类 |
Qt Remote Objects | All | All | 用于在进程或设备之间共享QObject的API(属性/信号/插槽)一种易于使用的机制 |
Qt Script (Deprecated) | All | All | 可以共享QObject的API类的机制,以使Qt应用程序可编写脚本。 不推荐使用Qt QML模块中的QJS *类 |
Qt SCXML | All | All | 提供用于从SCXML文件创建状态机并将其嵌入到应用程序中的类和工具 |
Qt Script Tools (Deprecated) | All | All (*) | 使用Qt脚本的应用程序的其他组件 |
Qt Sensors | All | Android, Qt for iOS, UWP, Mer, and QNX | 提供对传感器硬件和运动手势识别的访问 |
Qt Serial Bus | All | Windows, Linux, Boot to Qt targets, and QNX | 提供对串行工业总线接口的访问(当前该模块支持CAN总线和Modbus协议) |
Qt Serial Port | All | Windows, Linux, macOS, and QNX | 提供对硬件和虚拟串行端口的访问 |
Qt Speech | All | All except QNX | 提供对可访问性功能(如文本到语音)的支持 |
Qt SVG | All | All | 用于显示SVG文件内容的类, 支持SVG 1.2 Tiny标准的子集 |
Qt UI Tools | All | All (*) | 用于在运行时动态加载在Qt Designer中创建的基于QWidget的表单的类 |
Qt WebChannel | All | All | 提供从HTML客户端访问QObject或QML对象的功能,以将Qt应用程序与HTML / JavaScript客户端无缝集成 |
Qt WebEngine | All | Windows, Linux, and macOS | 使用Chromium浏览器项目在应用程序中嵌入Web内容的类和函数 |
Qt WebSockets | All | All | 提供符合RFC 6455的WebSocket通信 |
Qt WebView | All | Platforms with a native web engine | 通过使用平台固有的API在QML应用程序中显示Web内容,而无需包括完整的Web浏览器堆栈 |
Qt Windows Extras | All | Windows | 为Windows提供平台特定的API |
Qt X11 Extras | All | Linux/X11 | 为X11提供特定于平台的API |
Qt XML | All | All (*) | SAX和DOM的C ++实现(使用QXmlStreamReader和QXmlStreamWriter不需要此模块) |
Qt XML Patterns (deprecated) | All | All | 支持XPath,XQuery,XSLT和XML模式验证 |
Qt Wayland Compositor | Linux | Linux and Boot to Qt targets | 提供开发Wayland合成器的框架 |
根据商业许可或GNU通用公共许可v3提供的附加组件
模块名称 | 开发平台 | 目标平台 | 说明 |
---|---|---|---|
Qt Charts | All | All | UI组件,用于显示图表,该图表由静态或动态数据模型驱动 |
Qt Data Visualization | All | All | UI组件,用于创建3D数据可视化 |
Qt Network Authorization | All | Android | 为基于OAuth的在线服务授权提供支持 |
Qt Virtual Keyboard | All | Linux and Windows desktop, and Boot to Qt targets | 用于实现不同输入法的框架以及QML虚拟键盘, 支持本地化的键盘布局和自定义视觉主题 |
Qt Quick WebGL | All | WebGL-enabled web browsers | 提供一个平台插件,该插件允许使用WebGL™通过网络流式传输Qt Quick用户界面 |
功能 | 说明 |
---|---|
Qt Automotive Suite | 用于开发车载信息娱乐(IVI)系统的软件组件和工具的集合。 建立在Qt for Device Creation产品之上,并符合GENIVI汽车平台架构。 |
Qt for Automation | 用于自动化相关领域的库和工具,例如KNX,OPC UA和MQTT。 |
Qt for Device Creation | 用于快速,轻松且完全集成的嵌入式设备应用程序开发的工具 包含在大多数其他增值解决方案中。 |
工具 | 说明 |
---|---|
Qt Designer | 用于扩展Qt Designer的类。 |
以上内容如有错误请指正。