首页| 论坛| 消息
主题:Qt 5 攻略
20091001753发表于 2020-12-09 21:42
Qt 6 已经在2020年12月8日发布了。
但你没有看错,这篇是谈 Qt 5 攻略。
毕竟 Qt 6 在 Win 平台将只支持 Win10 及其以上。所以大批 Win7、XP 党 无缘 Qt 6。

而且 Qt6 为了赶进度,早期版本里缺少了很多模块,例如 图表、数据可视化、WebEngine
所以也没必要急着尝鲜 Qt 6 ,建议等完整版出来后,再升级也不迟。

那么 Qt 5 的各个版本,该如何选择呢?
Qt 5.6 是最后支持 XP 的版本。
Qt 5.9 作为LTS也已经在2020年5月31日停止更新了,所以建议使用目前依旧在更新的LTS:5.12 与 5.15。
能直接使用 Qt 5.15 当然是最好的,若实在有难处,就用 5.12 吧,但至少别再用 Qt 5.9 之前的版本了。

若你需要用到 QtWebkit,则只能用 Qt 5.5及其以前的版本。
若你需要 SSL 的支持,建议升级至 5.15,因为 5.13 开始已自支持 OpenSSL 1.1 及其以上。
若你常用 QImage,建议升级至 5.15,因为缩放和转换的许多方法都升级成多线程的。
若你常用 QtQuick,建议升级至 5.15,因为 5.14 开始 QtQuick 不再局限于 OpenGL 引擎加速。
若你常用 QNetworkAccessManager,建议升级至 5.15,因为开始支持超时设置 setTransferTimeout
若你发行在 Windows 平台,建议升级至 5.15,因为 5.14 开始对高DPI的设备有更好的支持。
若你需要开发 安卓APP,建议升级至 5.15,因为该版本完善了安卓开发文档。

特别说明
已自支持 OpenSSL 是很实用很实用的。
QNetworkAccessManager 的 setTransferTimeout 超时设置 是很实用很实用的。
现在很多设备,特别是笔记本,都是高分屏设备,对高分屏的良好支持是 5.14 开始的。
对触摸屏设备的良好支持,是 Qt 5.12 开始的。
有些高富帅设备,既是高分屏,又是触摸屏,例如 surface ,那必须 5.14 至少。
有些对话框的标题栏,会出现“?”按钮,叫“这是什么”的提示,很讨厌。 5.10 支持移除。

以下是 Qt 5.9 之后,各个版本比较重要的新特性:

Qt 5.15 LTS 维护至 2023年5月29日
https://wiki.qt.io/New_Features_in_Qt_5.15
QFile :: moveToTrash,将文件移动到回收站(以前只能直接删除文件)
QThreadPool :: start、tryStart,开始支持lambda
添加了静态模板QDebug :: toString函数,该函数将给定的对象传输到对字符串进行操作的QDebug实例中,然后返回该字符串。
QImage 的缩放和转换的许多方法都升级成多线程的。
QNetworkAccessManager 开始支持超时设置。
QWebEngineHistory 添加 clear
QWebSocket 开始支持设置最大帧大小和消息大小。
Qt Android 完善了开放文档。

Qt 5.14
https://wiki.qt.io/New_Features_in_Qt_5.14
更新了High-DPI支持。
QTextDocument支持读写Markdown格式,以替代HTML。
添加了独立于图形API的Scenegraph渲染器的第一个预览。这允许在Vulkan,Metal或Direct3D 11而不是OpenGL上运行合格的Qt Quick应用程序。

Qt 5.13
https://wiki.qt.io/New_Features_in_Qt_5.13
Windows 平台开始自带支持 OpenSSL
新增平台 Qt for WebAssembly
安卓平台 的QFile 开始支持 Urls

Qt 5.12 LTS  维护至 2021年12月6日
https://wiki.qt.io/New_Features_in_Qt_5.12
基于Windows 8及更高版本上的Windows指针输入消息,以统一的实现方式替代了平板电脑/触摸屏/触摸板/鼠标输入的处理。

Qt 5.11
https://wiki.qt.io/New_Features_in_Qt_5.11
QML性能大幅增强。
Qt 3D CPU 占用大幅减少。
Window 平台更新了易用性支持。

Qt 5.10
https://wiki.qt.io/New_Features_in_Qt_5.10
添加了QIODevice :: skip()
添加了跨平台Vulkan启动器:QVulkanInstance
QImage现支持超过2G的数据。
QWidget :: createWindowContainer()现在可在Android上使用。
QOpenGLWidget现在可用于呈现和读取(抓取)屏幕外内容。
添加了AA_DisableWindowContextHelpButton属性,可防止Windows对话框上的自动“这是什么”按钮。
新方法QWebEnginePage :: download用于以编程方式开始下载。
新增模块 Qt Speech 用于文本转语音。

Qt 5.9 LTS 已于2020年5月31日终止维护,不建议使用及其以前的版本
https://wiki.qt.io/New_Features_in_Qt_5.9
下一页 (1/2)
回帖(20):
20楼:5.15.5哪里有安装包?
19楼:llwj0303:忘了说了,我自己的系统是win10 (2021-03-12 17:20) 
安装VS2015 32位运 ..
18楼:llwj0303:更新到Qt5.15.2 + msvc2019,用32bit编译的程序在win7 32位系统上死活打不开,报错MSVC ..

全部回帖(20)»
最新回帖
收藏本帖
发新帖