Qt 是一个开源项目,可用作跨平台SDK(软件开发工具包)和GUI工具包,其中包含用于C ++编程的API。它是一个跨平台的框架,支持Linux,Microsoft Windows和Mac OS X操作系统。
该项目由Qt框架组成,其中包括用于C ++和CSS / JavaScript类编程语言的直观API,Qt Creator IDE,强大的跨平台集成开发环境,以及其他一些工具和工具链。
在基于Linux的操作系统中安装程序时,它将为用户提供多个命令行和图形实用程序,可用于配置Qt应用程序的外观,以及编译Qt程序或选择如果安装了多个默认版本,则使用默认版本。
Qt造物主
虽然Qt Creator带有UI设计器工具和设备上调试功能,但所包含的工具和工具链为Qt开发人员提供了所需的一切,从模拟器和本地或远程编译器,到国际化支持和设备工具链。
Qt配置
名为Qt Configuration的图形应用程序将允许用户选择Qt应用程序在当前桌面环境中的混合方式。例如,您可以在GNOME桌面环境中使用Qt应用程序,它们看起来与现有的GTK +应用程序相同。
此外,您还可以选择默认字体,启用GUI效果,修改手势和全局支柱设置,以及配置Phonon多媒体框架组件(如果可用)。
底线
Qt UI创建工具包将允许用户及时创建丰富的,支持触摸的图形用户界面和应用程序。它旨在将Qt框架与为Symbian手机和诺基亚N9智能手机创建应用程序而设计的工具结合起来。
总结一下,Qt是现有开源GUI工具包的强劲竞争对手,例如备受好评的GTK +项目。它提供了一些独特的功能,与其他GUI样式的兼容性以及平台独立性。
此版本中的新功能:
- 长期支持:
- 长期支持的最后一个版本是Qt 4.8。由于我们正在结束对Qt 4.8的支持,因此需要有一个新版本的Qt,它将在更长的时间内得到支持。
- 使用Qt 5.6,我们很乐意提供这一长期承诺。自Qt 5首次发布以来,我们已经进行了大量的更改和改进,使Qt 5.6成为基于项目的非常好的基础。
- 作为LTS承诺的一部分,我们将在未来三年内支持Qt 5.6,并通过常规补丁级别版本和错误修复使其更新。
- Qt 5.6长期受到支持,我们同时在即将推出的Qt版本中获得更多自由。因此,Qt 5.6也将是最后一个版本,无需符合C ++ 11标准的编译器即可使用。使用Qt 5.7,我们也将放弃对一些旧平台的支持。
- 基础设施工作:
- 在Qt 5.6中,我们一直致力于支持我们开发和发布的基础架构。新的持续集成系统(名为COIN)是我们大约一年前开始的一个项目,旨在克服我们在旧的基于Jenkins的CI和发布系统中遇到的许多问题。新系统在集成和测试应该成为Qt一部分的新变化方面要快得多。它还可以更加有效地工作,从而可以更轻松地将所有存储库和源代码整合到Qt版本中。
- 我们现在也在同一系统中生成大多数发布二进制文件,确保COIN测试与发布包提供的Qt完全相同的配置,同时显着减少我们的包生成时间。
- 新系统的另一大优势是我们现在可以有效地支持不同Qt分支的不同配置和平台;我们必须有一个重要的推动因素,使Qt 5.6成为长期支持的版本。
- 视窗:
- 虽然Qt 5.5主要在Windows 10上运行,但现在Windows 10完全支持Qt 5.6,它们都使用旧的win32和新的WinRT API。 Qt应用程序可以在台式机,平板电脑和手机上运行,当然也可以通过Windows应用商店进行分发。在大多数情况下,将现有的基于Qt的应用程序引入Windows应用商店只需要根据Qt的WinRT版本重新编译它。
- 使用Qt 5.6,我们还为Visual Studio 2015编译器提供二进制包。不幸的是,随着Microsoft改变了他们的插件基础架构,Visual Studio外接程序不再适用于Visual Studio 2015,但我们正在为较旧的Visual Studio版本提供该插件的更新版本。我们也开始致力于为Visual Studio 2015 IDE创建新的Qt集成。
- 对于嵌入式Windows设备,Qt 5.6除了对Windows Embedded Compact 7的现有支持外,还增加了对Windows Embedded Compact 2013的支持。
- 高DPI支持:
- Qt 5.6中进行了很多更改,确保Qt在所有平台上的高分辨率屏幕上都能更好地工作,扩展了我们以前主要在Mac OS X上的支持。这使得最初编写的应用程序可以在标准分辨率下工作显示,自动缩放到高分辨率显示。即使在具有不同像素密度的显示器之间移动正在运行的应用程序,Qt也会自动缩放UI以匹配显示。新功能还可以轻松添加到现有Qt应用程序中,支持Qt Widgets和基于Qt Quick的应用程序。有关更多详细信息,请查看我们的单独博客文章。
- 设备创建的Qt 5.6 - Windows主机,虚拟键盘和Yocto项目:
- 由于Qt完全是跨平台的,并且在过去几年中我们已经在使嵌入式开发与桌面或移动开发无缝结合方面做了很多工作,我们对Qt 5.6中的新设备创建功能感到非常兴奋:通过Windows主机启用嵌入式Linux开发,为Qt 5.6创建设备增加了很多便利。这允许开发人员直接从Windows主机开发和部署到他们的嵌入式Linux硬件。要了解有关此内容以及如何开始使用的更多信息,请参阅单独的博文。
- Qt虚拟键盘也升级到Qt 5.6,具有许多新功能,如手写识别。请参阅有关Qt Virtual Keyboard的相关博文和视频。
- 最后,Qt for Device Creation的嵌入式工作流程的另一大便利是Boot to Qt软件堆栈,它允许在开发板上立即启动Qt。之前通过Yocto Project工具可以自定义堆栈。现在,我们已经努力提高我们与Yocto项目和Yocto元层的一致性,以便更容易定制Boot to Qt堆栈或将所有相关的Qt部分直接引入您自己的基于Yocto的构建。
- Qt WebEngine:
- 我们基于Chromium的浏览器引擎Qt WebEngine自Qt 5.5以来已经有了一些重大改进。它现在基于Chromium 45,随之而来的是来自Chromium项目的许多新功能和错误修复。此外,现在支持Pepper插件(PPAPI),例如Flash。 Qt WebEngine现在也可以尊重Qt代理设置,Qt WebKit中早先存在的WebActions API现已移植到Qt WebEngine。
- 我们还为新的低级API添加了一个新的Qt WebEngineCore模块。其中包括支持自定义URL方案,拦截和阻止网络请求以及跟踪和阻止Cookie等功能。
- 最后,Linux上的Qt WebEngine现在使用了许多系统库而不是捆绑的系统库。
- 其他功能:
- 现在完全支持Qt位置模块,该模块可以轻松地将地图,导航和兴趣点(POI)集成到您的Qt应用程序中。该模块是基于插件的,允许您选择位置服务提供程序后端,并使用您自己的后端扩展API。在Qt 5.6中,我们为HERE,Mapbox和Open Street Map后端提供开箱即用的插件。
- Qt 5.6通过为所有容器类添加反向迭代器,QHash和QMap的key_iterator以及QByteArray的const_iterator等功能,改进了与C ++ 11和STL的兼容性。
- 我们添加了一个新的QVersionNumber类,在QNetworkAccessManager中添加了对HTTP重定向的支持,并添加了许多其他更小的功能。
- OpenGL ES 3支持已得到改进,有助于开发想要使用OpenGL ES 3功能的嵌入式或移动应用程序。
- 我们的Dock小部件基础架构已经有了一些改进,可以通过编程方式调整底座大小,将底座小部件放入浮动底座并重新排列标签式底座。
- Qt Multimedia为媒体播放器提供了新的PlayList QML类型和音频角色API。 Qt Canvas 3D现在支持Qt Quick Items作为纹理,可以直接渲染到QML场景前景或背景。
- 我们填补了许多与平台相关的功能差距。例如,Android上支持Qt NFC,Mac OS X上支持Qt定位,WinRT支持Qt WebView。
- 此外,此版本还包含大量较小的新功能,错误修复以及可提高性能和减少内存消耗的更改。
- 已移除内容
- 使用5.6时,将不再支持Qt WebKit和Qt Quick 1,并且将从该版本中删除。这些模块的源代码仍然可用。您可以继续编译和使用这些模块,但我们将不再支持它们。
- 出于安全原因,MNG和JPEG2000图像格式插件不再是二进制包的一部分。需要它们的用户仍然可以从源代码构建它们,但应该知道底层MNG和JPEG2000库已知安全问题。
版本中的新功能:
- 长期支持:
- 长期支持的最后一个版本是Qt 4.8。由于我们正在结束对Qt 4.8的支持,因此需要有一个新版本的Qt,它将在更长的时间内得到支持。
- 使用Qt 5.6,我们很乐意提供这一长期承诺。自Qt 5首次发布以来,我们已经进行了大量的更改和改进,使Qt 5.6成为基于项目的非常好的基础。
- 作为LTS承诺的一部分,我们将在未来三年内支持Qt 5.6,并通过常规补丁级别版本和错误修复使其更新。
- Qt 5.6长期受到支持,我们同时在即将推出的Qt版本中获得更多自由。因此,Qt 5.6也将是最后一个版本,无需符合C ++ 11标准的编译器即可使用。使用Qt 5.7,我们也将放弃对一些旧平台的支持。
- 基础设施工作:
- 在Qt 5.6中,我们一直致力于支持我们开发和发布的基础架构。新的持续集成系统(名为COIN)是我们大约一年前开始的一个项目,旨在克服我们在旧的基于Jenkins的CI和发布系统中遇到的许多问题。新系统在集成和测试应该成为Qt一部分的新变化方面要快得多。它还可以更加有效地工作,从而可以更轻松地将所有存储库和源代码整合到Qt版本中。
- 我们现在也在同一系统中生成大多数发布二进制文件,确保COIN测试与发布包提供的Qt完全相同的配置,同时显着减少我们的包生成时间。
- 新系统的另一大优势是我们现在可以有效地支持不同Qt分支的不同配置和平台;我们必须有一个重要的推动因素,使Qt 5.6成为长期支持的版本。
- 视窗:
- 虽然Qt 5.5主要在Windows 10上运行,但现在Windows 10完全支持Qt 5.6,它们都使用旧的win32和新的WinRT API。 Qt应用程序可以在台式机,平板电脑和手机上运行,当然也可以通过Windows应用商店进行分发。在大多数情况下,将现有的基于Qt的应用程序引入Windows应用商店只需要根据Qt的WinRT版本重新编译它。
- 使用Qt 5.6,我们还为Visual Studio 2015编译器提供二进制包。不幸的是,随着Microsoft改变了他们的插件基础架构,Visual Studio外接程序不再适用于Visual Studio 2015,但我们正在为较旧的Visual Studio版本提供该插件的更新版本。我们也开始致力于为Visual Studio 2015 IDE创建新的Qt集成。
- 对于嵌入式Windows设备,Qt 5.6除了对Windows Embedded Compact 7的现有支持外,还增加了对Windows Embedded Compact 2013的支持。
- 高DPI支持:
- Qt 5.6中进行了很多更改,确保Qt在所有平台上的高分辨率屏幕上都能更好地工作,扩展了我们以前主要在Mac OS X上的支持。这使得最初编写的应用程序可以在标准分辨率下工作显示,自动缩放到高分辨率显示。即使在具有不同像素密度的显示器之间移动正在运行的应用程序,Qt也会自动缩放UI以匹配显示。新功能还可以轻松添加到现有Qt应用程序中,支持Qt Widgets和基于Qt Quick的应用程序。有关更多详细信息,请查看我们的单独博客文章。
- 设备创建的Qt 5.6 - Windows主机,虚拟键盘和Yocto项目:
- 由于Qt完全是跨平台的,并且在过去几年中我们已经在使嵌入式开发与桌面或移动开发无缝结合方面做了很多工作,我们对Qt 5.6中的新设备创建功能感到非常兴奋:通过Windows主机启用嵌入式Linux开发,为Qt 5.6创建设备增加了很多便利。这允许开发人员直接从Windows主机开发和部署到他们的嵌入式Linux硬件。要了解有关此内容以及如何开始使用的更多信息,请参阅单独的博文。
- Qt虚拟键盘也升级到Qt 5.6,具有许多新功能,如手写识别。请参阅有关Qt Virtual Keyboard的相关博文和视频。
- 最后,Qt for Device Creation的嵌入式工作流程的另一大便利是Boot to Qt软件堆栈,它允许在开发板上立即启动Qt。之前通过Yocto Project工具可以自定义堆栈。现在,我们已经努力提高我们与Yocto项目和Yocto元层的一致性,以便更容易定制Boot to Qt堆栈或将所有相关的Qt部分直接引入您自己的基于Yocto的构建。
- Qt WebEngine:
- 我们基于Chromium的浏览器引擎Qt WebEngine自Qt 5.5以来已经有了一些重大改进。它现在基于Chromium 45,随之而来的是来自Chromium项目的许多新功能和错误修复。此外,现在支持Pepper插件(PPAPI),例如Flash。 Qt WebEngine现在也可以尊重Qt代理设置,Qt WebKit中早先存在的WebActions API现已移植到Qt WebEngine。
- 我们还为新的低级API添加了一个新的Qt WebEngineCore模块。其中包括支持自定义URL方案,拦截和阻止网络请求以及跟踪和阻止Cookie等功能。
- 最后,Linux上的Qt WebEngine现在使用了许多系统库而不是捆绑的系统库。
- 其他功能:
- 现在完全支持Qt位置模块,该模块可以轻松地将地图,导航和兴趣点(POI)集成到您的Qt应用程序中。该模块是基于插件的,允许您选择位置服务提供程序后端,并使用您自己的后端扩展API。在Qt 5.6中,我们为HERE,Mapbox和Open Street Map后端提供开箱即用的插件。
- Qt 5.6通过为所有容器类添加反向迭代器,QHash和QMap的key_iterator以及QByteArray的const_iterator等功能,改进了与C ++ 11和STL的兼容性。
- 我们添加了一个新的QVersionNumber类,在QNetworkAccessManager中添加了对HTTP重定向的支持,并添加了许多其他更小的功能。
- OpenGL ES 3支持已得到改进,有助于开发想要使用OpenGL ES 3功能的嵌入式或移动应用程序。
- 我们的Dock小部件基础架构已经有了一些改进,可以通过编程方式调整底座大小,将底座小部件放入浮动底座并重新排列标签式底座。
- Qt Multimedia为媒体播放器提供了新的PlayList QML类型和音频角色API。 Qt Canvas 3D现在支持Qt Quick Items作为纹理,可以直接渲染到QML场景前景或背景。
- 我们填补了许多与平台相关的功能差距。例如,Android上支持Qt NFC,Mac OS X上支持Qt定位,WinRT支持Qt WebView。
- 此外,此版本还包含大量较小的新功能,错误修复以及可提高性能和减少内存消耗的更改。
- 已移除内容
- 使用5.6时,将不再支持Qt WebKit和Qt Quick 1,并且将从该版本中删除。这些模块的源代码仍然可用。您可以继续编译和使用这些模块,但我们将不再支持它们。
- 出于安全原因,MNG和JPEG2000图像格式插件不再是二进制包的一部分。需要它们的用户仍然可以从源代码构建它们,但应该知道底层MNG和JPEG2000库已知安全问题。
版本5.9.3中的
新功能:
- 长期支持:
- 长期支持的最后一个版本是Qt 4.8。由于我们正在结束对Qt 4.8的支持,因此需要有一个新版本的Qt,它将在更长的时间内得到支持。
- 使用Qt 5.6,我们很乐意提供这一长期承诺。自Qt 5首次发布以来,我们已经进行了大量的更改和改进,使Qt 5.6成为基于项目的非常好的基础。
- 作为LTS承诺的一部分,我们将在未来三年内支持Qt 5.6,并通过常规补丁级别版本和错误修复使其更新。
- Qt 5.6长期受到支持,我们同时在即将推出的Qt版本中获得更多自由。因此,Qt 5.6也将是最后一个版本,无需符合C ++ 11标准的编译器即可使用。使用Qt 5.7,我们也将放弃对一些旧平台的支持。
- 基础设施工作:
- 在Qt 5.6中,我们一直致力于支持我们开发和发布的基础架构。新的持续集成系统(名为COIN)是我们大约一年前开始的一个项目,旨在克服我们在旧的基于Jenkins的CI和发布系统中遇到的许多问题。新系统在集成和测试应该成为Qt一部分的新变化方面要快得多。它还可以更加有效地工作,从而可以更轻松地将所有存储库和源代码整合到Qt版本中。
- 我们现在也在同一系统中生成大多数发布二进制文件,确保COIN测试与发布包提供的Qt完全相同的配置,同时显着减少我们的包生成时间。
- 新系统的另一大优势是我们现在可以有效地支持不同Qt分支的不同配置和平台;我们必须有一个重要的推动因素,使Qt 5.6成为长期支持的版本。
- 视窗:
- 虽然Qt 5.5主要在Windows 10上运行,但现在Windows 10完全支持Qt 5.6,它们都使用旧的win32和新的WinRT API。 Qt应用程序可以在台式机,平板电脑和手机上运行,当然也可以通过Windows应用商店进行分发。在大多数情况下,将现有的基于Qt的应用程序引入Windows应用商店只需要根据Qt的WinRT版本重新编译它。
- 使用Qt 5.6,我们还为Visual Studio 2015编译器提供二进制包。不幸的是,随着Microsoft改变了他们的插件基础架构,Visual Studio外接程序不再适用于Visual Studio 2015,但我们正在为较旧的Visual Studio版本提供该插件的更新版本。我们也开始致力于为Visual Studio 2015 IDE创建新的Qt集成。
- 对于嵌入式Windows设备,Qt 5.6除了对Windows Embedded Compact 7的现有支持外,还增加了对Windows Embedded Compact 2013的支持。
- 高DPI支持:
- Qt 5.6中进行了很多更改,确保Qt在所有平台上的高分辨率屏幕上都能更好地工作,扩展了我们以前主要在Mac OS X上的支持。这使得最初编写的应用程序可以在标准分辨率下工作显示,自动缩放到高分辨率显示。即使在具有不同像素密度的显示器之间移动正在运行的应用程序,Qt也会自动缩放UI以匹配显示。新功能还可以轻松添加到现有Qt应用程序中,支持Qt Widgets和基于Qt Quick的应用程序。有关更多详细信息,请查看我们的单独博客文章。
- 设备创建的Qt 5.6 - Windows主机,虚拟键盘和Yocto项目:
- 由于Qt完全是跨平台的,并且在过去几年中我们已经在使嵌入式开发与桌面或移动开发无缝结合方面做了很多工作,我们对Qt 5.6中的新设备创建功能感到非常兴奋:通过Windows主机启用嵌入式Linux开发,为Qt 5.6创建设备增加了很多便利。这允许开发人员直接从Windows主机开发和部署到他们的嵌入式Linux硬件。要了解有关此内容以及如何开始使用的更多信息,请参阅单独的博文。
- Qt虚拟键盘也升级到Qt 5.6,具有许多新功能,如手写识别。请参阅有关Qt Virtual Keyboard的相关博文和视频。
- 最后,Qt for Device Creation的嵌入式工作流程的另一大便利是Boot to Qt软件堆栈,它允许在开发板上立即启动Qt。之前通过Yocto Project工具可以自定义堆栈。现在,我们已经努力提高我们与Yocto项目和Yocto元层的一致性,以便更容易定制Boot to Qt堆栈或将所有相关的Qt部分直接引入您自己的基于Yocto的构建。
- Qt WebEngine:
- 我们基于Chromium的浏览器引擎Qt WebEngine自Qt 5.5以来已经有了一些重大改进。它现在基于Chromium 45,随之而来的是来自Chromium项目的许多新功能和错误修复。此外,现在支持Pepper插件(PPAPI),例如Flash。 Qt WebEngine现在也可以尊重Qt代理设置,Qt WebKit中早先存在的WebActions API现已移植到Qt WebEngine。
- 我们还为新的低级API添加了一个新的Qt WebEngineCore模块。其中包括支持自定义URL方案,拦截和阻止网络请求以及跟踪和阻止Cookie等功能。
- 最后,Linux上的Qt WebEngine现在使用了许多系统库而不是捆绑的系统库。
- 其他功能:
- 现在完全支持Qt位置模块,该模块可以轻松地将地图,导航和兴趣点(POI)集成到您的Qt应用程序中。该模块是基于插件的,允许您选择位置服务提供程序后端,并使用您自己的后端扩展API。在Qt 5.6中,我们为HERE,Mapbox和Open Street Map后端提供开箱即用的插件。
- Qt 5.6通过为所有容器类添加反向迭代器,QHash和QMap的key_iterator以及QByteArray的const_iterator等功能,改进了与C ++ 11和STL的兼容性。
- 我们添加了一个新的QVersionNumber类,在QNetworkAccessManager中添加了对HTTP重定向的支持,并添加了许多其他更小的功能。
- OpenGL ES 3支持已得到改进,有助于开发想要使用OpenGL ES 3功能的嵌入式或移动应用程序。
- 我们的Dock小部件基础架构已经有了一些改进,可以通过编程方式调整底座大小,将底座小部件放入浮动底座并重新排列标签式底座。
- Qt Multimedia为媒体播放器提供了新的PlayList QML类型和音频角色API。 Qt Canvas 3D现在支持Qt Quick Items作为纹理,可以直接渲染到QML场景前景或背景。
- 我们填补了许多与平台相关的功能差距。例如,Android上支持Qt NFC,Mac OS X上支持Qt定位,WinRT支持Qt WebView。
- 此外,此版本还包含大量较小的新功能,错误修复以及可提高性能和减少内存消耗的更改。
- 已移除内容
- 使用5.6时,将不再支持Qt WebKit和Qt Quick 1,并且将从该版本中删除。这些模块的源代码仍然可用。您可以继续编译和使用这些模块,但我们将不再支持它们。
- 出于安全原因,MNG和JPEG2000图像格式插件不再是二进制包的一部分。需要它们的用户仍然可以从源代码构建它们,但应该知道底层MNG和JPEG2000库已知安全问题。
评论没有发现