QT5.10版本变动

文章目录

    • 1.新添加的扩展模块
        • 1.1Qt Virtual Keyboard
        • 1.2Qt SCXML
        • 1.3Qt Gamepad
        • 1.4新增功能
    • 2.删除的模块
    • 3.在开发中的模块
        • 3.1Qt Remote Objects
        • 3.2Qt Speech
        • 3.3Qt Network Authorization
    • 4.原有模块添加的新功能
        • 4.1Qt Core
        • 4.2Qt gui
        • 4.3Qt Widgets
        • 4.4Qt network
        • 4.5Qt qml
        • 4.6Qt Quick
        • 4.7Qt Quick Controls 2
        • 4.8Qt 3D
        • 4.9Qt WebEngine

对比qt5.6版本与qt5.10.1版本,做了哪些升级

1.新添加的扩展模块

1.1Qt Virtual Keyboard

输入框架,输入框架可以轻松编写自定义输入方法或集成第三方输入引擎。输入法可以用C ++或QML实现
Qt虚拟键盘的主要功能包括:

可定制的键盘布局和动态切换风格。
预测文字输入与词选择。
字符预览和替代字符视图。
自动大写和空格插入。
可扩展到不同的分辨率。
支持不同的字符集(拉丁文,简体/繁体中文,印地文,日文,阿拉伯文,希伯来文,韩文等)。
支持大多数常用输入语言,并可轻松扩展语言支持。
从左到右和从右到左输入。
硬件关键支持2路和5路导航。
手写支持,手势全屏输入。
音频反馈。
跨平台功能。

1.2Qt SCXML

提供用于从SCXML文件创建状态机并将其嵌入到应用程序中的类和工具。Qt SCXML模块不同于Qt Core模块中的状态机框架,因为Qt SCXML提供了一个可以解析和处理符合SCXML文档的符合性处理器。

1.3Qt Gamepad

使Qt应用程序能够支持使用游戏手柄硬件,并且在某些情况下还可以实现远程控制。

1.4新增功能

Qt 3D Studio
Qt 3D Studio将同时支持Qt 5.9和5.10,Qt 3D Studio是一个图形编辑器,用于创建3D用户界面。Qt 3D Studio包含运行在您的应用程序中的运行时组件以及用于设计和创建UI的图形设计工具。虽然该工具是一个独立的应用程序,运行时可以很容易地与Qt的其余部分整合
(添加新的扩展模块,耗时较长)

2.删除的模块

Qt Script

3.在开发中的模块

3.1Qt Remote Objects

代码已经释放
提供一种易于使用的机制,用于在进程或设备之间共享QObject的API(属性/信号/插槽)。
Qt远程对象(QtRO)是一个为Qt开发的进程间通信(IPC)模块。这个想法是扩展现有Qt的功能,以便在进程或计算机之间轻松交换信息。

3.2Qt Speech

代码没有释放
该模块使Qt应用程序能够支持文本到语音等辅助功能,文本到语音转换最常见的用例是最终用户驾车时无法在手机上接收收到的消息。在这种情况下,消息应用程序可以读出传入的消息。
该模块依赖于Linux平台上的Speech Dispatcher(libspeechd)。在其他平台上,它使用本机API访问平台特定的文本到语音引擎

3.3Qt Network Authorization

代码没有释放
提供了一组API,使Qt应用程序能够在不暴露用户密码的情况下获得在线帐户和HTTP服务的有限访问。目前,支持的授权协议是OAuth版本1和2。

(新添加的扩展模块移植升级耗时长)

4.原有模块添加的新功能

4.1Qt Core

添加QStringView的基本实现。
添加了QIODevice :: skip()以提高读取操作的性能。
提供了与机器无关的数据类型,(例如qint16_le,quint32_be)
增加了QRandomGenerator类,为随机数提供了一个简单的API。
为QSemaphore添加了QSemaphoreReleaser RAII风格的类。
添加了QKeyValueIterator,以便对关联容器进行更有效的迭代

4.2Qt gui

OpenGL ES 3.2 API通过 QOpenGLExtraFunctions类,实现跨平台
(需要验证opengles 3.0的库,耗时)
QImages现在可以使用2GB以上的像素数据。
增加了QFont :: PreferNoShaping风格策略。

4.3Qt Widgets

添加一些小的功能
QWidget :: createWindowContainer()现在可以在Android上运行
QOpenGLWidget现在可用于渲染和回读(抓取)屏幕外的内容。
在QTextOption,QTextEdit和QPlainTextEdit中添加了tabStopDistance属性
将selectionEnd(),selectionLength()添加到QLineEdit,补充selectionStart()
添加了新的样式提示:SH_TitleBar_ShowToolTipsOnButtons
添加了在QOpenGLWidget中指定自定义内部纹理格式的支持

4.4Qt network

支持OpenSSL 1.1后端。
在QNetworkAccessManager中以持久的方式存储HSTS(HTTP严格传输安全性)策略
实施非SSL HTTP / 2使用的h2c网络升级

4.5Qt qml

增加了对QML中的枚举声明的支持
增加动态地重新转换语言上的所有字符串。

4.6Qt Quick

添加了一个形状插件,允许将任意形状的物品放入场景中。在QtQuick.Shapes 1.0下提供了一个Shape类型。这允许添加描边和填充路径到Qt Quick场景中。通过生成几何图形或使用GL_NV_path_rendering扩展来渲染这些形状
添加了Qt.labs.handlers插件,提供TapHandler,PinchHandler和DragHandler。这些是指针处理程序,用于处理来自鼠标或触摸屏的事件的轻量级对象,它改进了如何处理更复杂的多点触控用例。除了使用Mouse-和TouchArea来处理这些输入事件,您现在可以将处理程序附加到任何项目的不同类型的指针事件。
QQuickItem图层现在可以通过属性layer.samples请求由多采样帧缓冲区支持
添加了font.kerning和font.preferShaping属性,以便对字体修整子系统进行高级控制
增加了支持从.pkm文件直接加载ETC1和ETC2压缩纹理的图像元素。 (在支持ETC1 / 2的平台上)
(添加的功能较多,这个模块的升级移植,耗时较多)

4.7Qt Quick Controls 2

引入了新的QML类型:Action,ActionGroup,MenuBar
引入新风格:Fusion风格面向桌面风格,Imagine基于图像的风格
添加新的支持:按钮,代表和菜单中的操作和图标,嵌套菜单和级联子菜单
指定默认字体和palett
添加新成员:

   TabBar::index, tabBar, and position attached properties:
   Dialog::applied(), reset(), discarded(), and helpRequested() signals
   Dialog::standardButton() method
   StackView::empty property
   Menu::popup() and dismiss() methods
   Menu::actionAt(), addAction(), insertAction(), removeAction(), and takeAction() methods
   Menu::menuAt(), addMenu(), insertMenu(), removeMenu(), and takeMenu() methods
   Menu::count and currentIndex properties
   MenuItem::menu property
   Container::removeItem(Item) and takeItem(int) methods (TabBar and SwipeView)
   Popup::enabled, mirrored, and opened properties
   "horizontal" and "vertical" properties to all controls that had an "orientation" property: RangeSlider, Slider, ScrollBar, ScrollIndicator, SwipeView

4.8Qt 3D

动画系统预览
Framebuffer blit框架图节点
接近过滤器框架图节点
改进的图层过滤框架图节点
支持shader图形:从基于图形的描述动态生成片段着色器
相机viewAll命令
可选的SIMD支持
Scene2D:将Qt Quick内容嵌入到Qt 3D中并与之交互

4.9Qt WebEngine

模块所依赖的libqsqlite.so这个库需要升级
已更新至Chromium 61。
暂停/恢复添加到下载项目,并以编程方式启动它们。
添加了允许JavaScript进行窗口激活的设置。
添加了隐藏滚动条的设置
以前在QWebPage中添加的更多WebActions添加到QWebEnginePage。
新的方法QWebEnginePage :: download以编程方式开始下载。

你可能感兴趣的:(qt学习)