Qt 5.14和Qt Creator工具简介

Qt5简介

Qt 5是Qt的最新版本。它使开发人员能够以直观的用户界面针对多个目标开发应用程序,这比以往任何时候都快。Qt 5可以更轻松地解决触摸屏和平板电脑所需的最新UI范式转换。

通过在Qt 5中改进对JavaScript和QML的支持,开发人员可以提高生产力和灵活性,同时仍具有C ++基础和Qt Widget支持。HTML5开发人员将对包含基于Chromium的Qt WebEngine和Qt WebChannel的Web产品感到宾至如归。

Qt 5与Qt 4高度兼容。Qt4应用程序的开发人员可以利用其当前功能无缝地过渡到Qt 5,并逐步利用Qt 5所能实现的所有重要功能开发新事物。

借助新的模块化代码库(包括基本模块和附加模块)以及Qt Platform Abstraction的合并,Qt 5中的跨平台可移植性变得更加简单。

Qt 功能与特性

  • 直观的 C++ 类库:模块化 Qt C++ 类库提供一套丰富的应用程序生成块 (block),包含了构建高级跨平台应用程序所需的全部功能。具有直观,易学、易用,生成好理解、易维护的代码等特点。
  • 跨桌面和嵌入式操作系统的移植性:使用 Qt,您只需一次性开发应用程序,就可跨不同桌面和嵌入式操作系统进行部署,而无须重新编写源代码,可以说 Qt 无处不在(QtEverywhere) 。
  • 使用单一的源代码库定位多个操作系统;
  • 通过重新利用代码可将代码跨设备进行部署;
  • 无须考虑平台,可重新分配开发资源;
  • 代码不受担忧平台更改影响的长远考虑 ;
  • 使开发人员专注于构建软件的核心价值,而不是维护 API 。
  • 具有跨平台 IDE 的集成开发工具:Qt Creator 是专为满足 Qt 开发人员需求而量身定制的跨平台集成开发环境 (IDE)。Qt Creator 可在 Windows、Linux/X11 和 Mac OS X 桌面操作系统上运行,供开发人员针对多个桌面和移动设备平台创建应用程序。

Qt移动无处不在

Qt现在带有适用于Android和iOS的生产就绪端口。这些平台端口已经进行了广泛的工作,现在扩展了Qt的多平台承诺,使其涵盖台式机,嵌入式和移动平台。

凭借对Android和iOS的全面支持,Qt是通过单一代码库瞄准移动市场的绝佳解决方案。只需重新编译即可将现有的桌面或嵌入式应用程序带到移动设备中,这既快速又容易。

Qt 5.14的新功能

Qt 3D模块

彻底检查了线程体系结构。这包括删除方面线程。
检修了前端/后端节点同步。
使QTransform能够访问世界矩阵。
引入了Scene3DView。
现在,Scene3D与QtQuick同步,并且可以在没有FBO的情况下渲染为参考底图。

Qt蓝牙模块

引入了一个新的,可选的Win32后端,该后端支持Windows 7和8。此后端不是默认构建的,也不是预构建程序包的一部分。
QLowEnergyController:引入了AuthorizationError。
添加了按每个制造商ID包含多个制造商数据条目的功能。

Qt核心模块

通过实现适当的后端,在QCalendar中增加了对除格里高利历之外的日历的支持。
添加了后端,以实现公历,贾拉利(波斯),*民用,米兰科维奇和朱利安历法。我们期待其他贡献。
添加了QColorConstants,这是一个提供constexpr QColor实例的名称空间,该实例不会花费任何运行时开销。

Qt GUI模块

更新了High-DPI支持:
引入了应用程序可以选择使用的非整数比例因子(例如,比例因子为150%)。使用QGuiApplication :: highDpiScaleFactorRoundingPolicy或QT_SCALE_FACTOR_ROUNDING_POLICY设置舍入策略。
添加了QT_ENABLE_HIGHDPI_SCALING环境变量,从而可以基于显示DPI进行高DPI缩放。这将替换QT_AUTO_SCREEN_SCALE_FACTOR(现已弃用),并且对应于Qt :: AA_EnableHighDpiScaling应用程序属性。
添加了对QT_FONT_DPI环境变量的跨平台支持,目的是使用特定的DPI值进行开发和测试。
增加了对图像的色彩空间支持;从JPEG,PNG,WebP和TIFF图像读取和写入色彩空间,并对图像执行色彩空间转换。
QTextDocument和QTextTable样式的改进:
通过QTextTableCellFormat添加了每边缘边框样式。
添加了边框折叠模式。
添加了对(部分)HTML表样式导入和导出的支持。
添加了对将Markdown格式读写到QTextDocument的支持,以替代HTML。

Qt多媒体模块

添加了QVideoFrame :: Format_YUV422P。
引入了对GStreamer OpenGL插件的支持。

Qt网络模块

引入了HTTP / 2配置API。
引入了网络连接监视。
添加了对Kerberos代理身份验证的支持。

Qt QML模块

添加了qmlRegisterSingletonInstance()函数。这允许将QObject作为单例公开给QML,而不必创建qmlRegisterSingletonType()所需的工厂函数。在常见用法中,它用作setContextProperty()的类型安全替代。
添加了qmlRegisterAnonymousType()来替代qmlRegisterType()。它允许指定URI和主要版本,从而提供更好的工具支持。
在中添加了实验性-U选项qmllint。设置后,对不合格标识符的访问将生成警告。

Qt快速模块

作为可选功能,添加了独立于图形API的Scenegraph渲染器的预览。这允许在Vulkan,Metal或Direct3D 11而不是OpenGL上运行合格的Qt Quick应用程序。当前支持的平台:
Windows 10(Direct3D)
带有X11 / xcb的Linux(Vulkan)
macOS(带有MoltenVK的金属或Vulkan)
Android 7.0以上版本(Vulkan)
在Text和TextEdit中添加了对Markdown格式(包括CommonMark和GitHub方言)的支持,以替代HTML。这包括GitHub清单扩展名,允许在TextEdit中切换复选框。
默认情况下,将TextEdit切换为使用I型光标,并在将光标悬停在复选框或链接上时使用指向手形光标。可以覆盖默认光标。
添加了WheelHandler,它是鼠标滚轮的事件处理程序,还可以选择用于来自触控板的模拟鼠标滚轮事件。
在Qt.labs.animation中添加了BoundaryRule:一个PropertyValueInterceptor,它限制数值属性可以具有的值的范围,在超调值时应用“阻力”,并提供将其动画化回其正常范围的能力。与WheelHandler结合使用时,它特别有用,提供类似于Flickable的物理功能。
就像AnimatedImage 一样,在image和BorderImage中添加了currentFrame和frameCount属性。例如,这允许从包含多个图标的.ICO文件中选择单个图标。
添加了PathPolyline和PathMultiline作为使用Qt Quick Shape绘制和/或填充任意多边形和多边形集的其他方式。

Qt串行总线模块

添加了运算符以比较QCanBusDevice :: Filter是否相等或不相等。
添加了QCanBusDevice :: OperationError和QCanBusDevice :: TimeoutError代码以表示操作和超时错误。
添加了QCanBusDevice :: busStatus()函数以从CAN总线设备查询总线状态。
添加了QCanBusDevice :: resetController()函数以将CAN控制器从总线关闭状态释放。
SocketCAN:添加了配置参数QCanBusDevice :: ProtocolKey,以使用协议系列PF_CAN中的另一个协议。
SocketCAN:如果libsocketcan可用,则可以在运行时检索并设置CAN总线比特率。
PeakCAN:使用MacCAN库在macOS上增加了对PCAN-USB设备的支持。
公开了用于Modbus通信的基础QIODevice。例如,这可以设置串行端口硬件流控制(RTS / CTS)。

Qt测试模块

引入initMain()了执行QApplication存在之前必须进行的任何初始化的函数。

Qt WebEngine模块

更新为Chromium 77。
添加了新的API以控制QWebEnginePage的生命周期。

Qt Widgets模块

向QTextEdit和QTextBrowser添加了对Markdown格式(包括CommonMark和GitHub方言)的支持,以替代HTML。这包括GitHub清单扩展名,允许在小部件可编辑的情况下切换复选框。QTextBrowser :: setSource()基于文件扩展名检测Markdown。

Qt Creator 功能和特性

qt Creator 是一个非常强大的Qt开发工具
Qt 5.14和Qt Creator工具简介
复杂代码编辑器:Qt Creator 的高级代码编辑器支持编辑 C++ 和 QML (JavaScript)、上下文相关帮助、代码完成功能、本机代码转化及其他功能。
版本控制:Qt Creator 汇集了最流行的版本控制系统,包括 Git、Subversion、Perforce、CVS 和 Mercurial。
集成用户界面设计器:Qt Creator 提供了两个集成的可视化编辑器:用于通过 Qt widget 生成用户界面的 Qt Designer,以及用于通过 QML 语言开发动态用户界面的 Qt Quick Designer。
项目和编译管理 :无论是导入现有项目还是创建一个全新项目,Qt Creator 都能生成所有必要的文件。包括对 cross-qmake 和 Cmake 的支持。
桌面和移动平台:Qt Creator 支持在桌面系统和移动设备中编译和运行 Qt 应用程序。通过编译设置您可以在目标平台之间快速切换。

Qt Quick

Qt Quick 是在 Qt4.7 中被引进的一项技术。Qt Quick 是一种高级用户界面技术,开发人员和设计人员可用它协同创建动画触摸式用户界面和应用程序。它由三部分构成:1.QML:像 JavaScript 一样的声明式语言;2. Qt Creator:在 Qt IDE 中的直观工具;3. Qt Declarative:强大的 C++ 模块。

官方文档地址:https://doc.qt.io/qt-5/