Qt 6.3发布

Qt6.3带来了大量的错误修复,提升了整体质量,特别是引入了QtQuick编译器以提高QML性能。新特性包括QtQuickControls的TreeView和Calendar,QtQuick3D的反射支持,以及QtPDF模块。Qt6.3还增强了QtWidgets、QtNetwork和QtPositioning的功能。未来计划支持WebAssembly和gRPC等新功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Qt 6.3 released

Qt 6.3发布

Tuesday April 12, 2022 by Lars Knoll | Comments

​2022年4月12日星期二 拉尔斯·诺尔 | 评论

I’m happy to announce that Qt 6.3 has been released today. As always, the release is packed with many new features as well as a large amount of bug fixes. 

我很高兴地宣布Qt 6.3今天已经发布。一如往常,该版本包含了许多新功能以及大量错误修复。

Quality 

质量

Let’s start with bug fixes. The quality of Qt and our releases is something we consider extremely important. While a large framework as Qt can never be free of bugs, we are constantly aiming at keeping that number as low as possible. We are putting a lot of effort into fixing bugs reported through our bugtracker, and improving the coverage of Qt with automated tests.

​让我们从错误修复开始。Qt和我们的版本的质量是我们认为非常重要的。虽然像Qt这样的大型框架永远都不可能没有bug,但我们一直致力于将这个数字保持在尽可能低的水平。我们正在努力修复通过bugtracker报告的bug,并通过自动化测试提高Qt的覆盖率。

Since the release of Qt 6.2, we fixed a total of 1750 bugs that have been reported by our users. All those bug fixes are part of the Qt 6.3.0 release, leading to a significantly improved quality for Qt 6.3.

自Qt 6.2发布以来,我们修复了用户报告的总共1750个错误。所有这些错误修复都是Qt 6.3.0版本的一部分,从而大大提高了Qt 6.3的质量。

We will of course continue to have a strong focus on quality and provide further bug fixes to upcoming patch level releases, both within the Qt 6.3 series as well as our 6.2 LTS releases.

当然,我们将继续关注质量,并为即将发布的补丁级版本提供进一步的错误修复,包括Qt 6.3系列和我们的6.2 LTS版本。

New features

新特性

But we haven’t just worked on bug fixes and quality. Qt 6.3 also comes with a decent set of new functionality. A total of 250 user stories and tasks implementing new functionality have been completed for 6.3. Those are of course too many to list individually, and if you want to have all the details, have a look at our new features page and our Release Notes.

​但我们不仅致力于修复缺陷和提高质量。Qt 6.3还提供了一套不错的新功能。在6.3版本中,总共完成了250个用户故事和实现新功能的任务。这些当然太多了,无法单独列出,如果您想了解所有细节,请查看我们的新功能页和发行说明。

Let’s have a look at some of the highlights.

让我们来看看一些亮点。

Qt Quick Compilers

Qt Quick编译器

The new Qt Quick Compilers are one of the big new features we’re introducing with Qt 6.3. This is something we’ve been working on for quite a while now. Many of the changes we did on the QML side for Qt 6 were laying the foundations for the new compilers, and I’m very happy, that we can now make the compilers available to you as a Technology Preview.

新的Qt Quick编译器是我们在Qt 6.3中引入的一个重要新特性。这是我们已经做了很长一段时间的事情。我们在Qt 6的QML端所做的许多更改都为新的编译器奠定了基础,我很高兴,我们现在可以将编译器作为技术预览提供给您。

The new QML compilers consist of two tools, the QML Type compiler (qmltc) and the QML Script Compiler (qmlsc). The first one compiles QML types to C++, significantly speeding up instantiation of QML types. The second one compiles functions and bindings to C++ where it makes sense, giving significant performance improvements when evaluating functions and bindings in QML.

新的QML编译器由两个工具组成,QML类型编译器(qmltc)和QML脚本编译器(qmlsc)。第一个编译QML类型到C++,大大加快QML类型的实例化。第二个编译功能和绑定到C++,在这里有意义,当评估QML中的函数和绑定时,会给出显著的性能改进。

 It aims to compile functions and bindings in QML into C++ code whenever possible. As QML is a dynamically typed language, this doesn’t make sense if we can’t determine all types at compile time. In that case, the compiler falls back to compiling the methods into byte code similar to the old qmlcachegen.

它的目的是在QML编译函数和绑定到C++代码中。由于QML是一种动态类型化语言,如果我们不能在编译时确定所有类型,这就没有意义。在这种情况下,编译器会退回到将方法编译成字节码的方式,类似于旧的qmlcachegen。

Using these compilers, we can achieve significant performance improvements for bindings and functions that can be compiled into native code, as shown in the graphs below.

使用这些编译器,我们可以显著提高可编译为本机代码的绑定和函数的性能,如下图所示。

Binding evaluation performance increases substantially, in the examples above bindings can be evaluated between 20 and 35% faster than without the compiler.

绑定评估性能显著提高,在上述示例中,绑定的评估速度比不使用编译器的情况下快20%到35%。

For those of you who are interested in all the details, we have published a series of blog posts about the technology. Have a look here for the generic introduction, here for an in-depth view, and finally here for more detailed benchmark results.

​对于那些对所有细节感兴趣的人,我们发布了一系列关于这项技术的博客文章。请看这里的一般介绍,这里的深入介绍,最后这里的更详细的基准测试结果。

Qt Quick and Qt Quick Controls

Qt Quick和Qt Quick Controls

In Qt 6.3, we also added a couple of new Qt Quick Controls. Two of them have been available as standalone components in the marketplace previously. We chose to integrate them into our set of standard Controls to make them available to all our users. TreeView and Calendar are both commonly requested functionality and will also make it more attractive to build desktop applications using Qt Quick.

​在Qt 6.3中,我们还添加了两个新的Qt Quick Controls。其中两个之前已在市场上作为独立组件提供。我们选择将它们集成到我们的一组标准控件中,以便所有用户都能使用它们。TreeView和Calendar都是常用的功能,使用Qt Quick构建桌面应用程序也会更具吸引力。

 

In addition, we added two new dialogs, FolderDialog and MessageDialog. Those two dialogs will use the system dialogs where available (on desktop and mobile platforms). On other platforms Qt provides those dialogs with a platform dependent theming.

​此外,我们还添加了两个新对话框FolderDialog和MessageDialog。这两个对话框将使用系统对话框(在桌面和移动平台上)。在其他平台上,Qt为这些对话框提供了与平台相关的主题。

Finally, we have done some significant work to improve the performance of our text components (Text, TextEdit, TextArea, TextInput) in Qt Quick. Previously, passing a very large document to the text controls could use up a rather large amount of memory and lead to slow drawing performance. This has been fixed in Qt 6.3, but ensuring the backend only ever renders the part of the text that is currently visible on the screen.

最后,我们已经做了一些重要的工作来提高Qt-Quick中文本组件(text、TextEdit、TextArea、TextInput)的性能。以前,将非常大的文档传递给文本控件可能会占用相当大的内存,并导致绘图性能降低。这在Qt 6.3中已经修复,但确保后端只呈现当前在屏幕上可见的部分文本。

Qt Quick 3D

Also Qt Quick 3D has seen a couple of new features. Most notable are probably the new support for reflections.

此外,Qt Quick 3D还提供了一些新功能。最值得注意的可能是对反射的新支持。

Reflections are implemented using the ReflectionProbe QML element. The probe is positioned in the scene, where it captures the surrounding environment and saves it in a cube map. That map can then be used by other elements to show reflections. Have a look at the blog post about the feature for more details.

​反射使用ReflectionProbe QML元素实现。探测器定位在场景中,捕捉周围环境并将其保存在立方体地图中。然后,其他元素可以使用该贴图来显示反射。查看有关该功能的博客帖子,了解更多详细信息。

The particle system has also gained a couple of new features, find out more in the separate blog post here.

​粒子系统还获得了一些新功能,请在这里的单独博客文章中了解更多。

The new ResourceLoader element gives you more control over resource management in Qt Quick 3D and allowing you to pre-load large resources such as meshes or textures and helps avoiding that they get unloaded if they are currently not visible in the scene.

​新的ResourceLoader元素使您能够更好地控制Qt Quick 3D中的资源管理,并允许您预加载网格或纹理等大型资源,并有助于避免在场景中当前不可见时卸载这些资源。

Qt PDF

With Qt PDF, Qt 6.3 adds another module that has been missing since we moved to Qt 6. It is available as a Technology Preview in 6.3. It covers the same functionality as Qt PDF in 5.15, and we have some new functionality planned for the module for 6.4.

在Qt PDF中,Qt 6.3添加了另一个模块,该模块自我们迁移到Qt 6以来一直缺失。它在6.3中作为技术预览版提供。它涵盖了与5.15中的Qt PDF相同的功能,我们为6.4中的模块计划了一些新功能。

Other improvements

其他改进

We’ve made a huge number of smaller improvements in Qt Core. A large part of those are adding convenience to our string classes. Additional features are support for ISO639-2 language tags in QLocale, AM/PM specifiers when converting times to strings in QDate, QTime and QLocale, easier conversion between JSON and CBOR, QtFuture::whenAll() and whenAny() methods and many other smaller improvements.

我们在Qt Core上做了大量较小的改进。其中很大一部分为我们的字符串类增加了便利。其他功能包括在QLocale中支持ISO639-2语言标记、在QDate、QTime和QLocale中将时间转换为字符串时使用AM/PM说明符、简化JSON和CBOR之间的转换、QtFuture::whenAll()和whenAny()方法以及许多其他较小的改进。

Qt Network can now be queried for the transport medium that is being used and whether the transport is metered.

Qt Network现在可以查询正在使用的传输介质,以及是否对传输进行了计量。

Qt Positioning now allows you to query the accuracy of the obtained position on Android and iOS. Qt Bluetooth now exposes BTLE service data as part of the device information and now correctly reports the adapter state on Windows.

Qt Positioning现在允许您在Android和iOS上查询获得位置的准确性。Qt Bluetooth现在将BTLE服务数据作为设备信息的一部分公开,并在Windows上正确报告适配器状态。

We’ve also worked on many improvements for Qt Widgets, with a focus on high resolution displays, styles, styling with stylesheets and itemviews.

我们还对Qt Widgets进行了许多改进,重点是高分辨率显示、样式、样式表和项目视图。

On the build system side, there are quite a few improvements to our CMake support in Qt 6.3. The most notable one is the new  function qt-generate-deploy-app-script(), that greatly simplifies the generation of a deployment script for the application on different platforms. Other improvements are additions to handle the QML type and script compilers, support for multi-ABI builds on Android and generation of a default launch screen on iOS.

​在构建系统方面,Qt 6.3中的CMake支持有很多改进。最值得注意的是新函数qt-generate-deploy-app-script(),它大大简化了在不同平台上为应用程序生成部署脚本的过程。其他改进包括添加处理QML类型和脚本编译器、支持Android上的多ABI构建,以及在iOS上生成默认启动屏幕。

Outlook

前景

Qt 6.3 is a great step towards the next releases, Qt 6.4 and our next LTS release for the Qt 6 series, Qt 6.5. We have some great plans for those releases, that include amongst other things full support for WebAssembly, a QHttpServer, gRPC support, an FFmpeg based cross-platform backend for Qt Multimedia, Qt Speech, Qt Location, and better native Look&Feel on Windows 11 and iOS support. For more detail you can also have a look at our blogpost about the  Qt 2022 roadmap

​Qt 6.3是迈向下一个版本Qt 6.4和Qt 6系列的下一个LTS版本Qt 6.5的重要一步。我们为这些版本制定了一些很棒的计划,其中包括全面支持WebAssembly、QHttpServer、gRPC支持、基于FFmpeg的跨平台后端,用于Qt多媒体、Qt语音、Qt位置,以及在Windows 11和iOS上更好的本机外观和感觉支持。有关更多详细信息,您还可以查看我们关于Qt 2022路线图的博客帖子。 

Thanks 

感谢

Finally, I’d like to thank everybody that has helped make Qt 6.3 happen. You can find a full list of all contributors at the end of the release notes, but there are also many others that have helped by reporting bugs or keeping our servers and infrastructure running.

​最后,我要感谢所有帮助Qt 6.3实现的人。您可以在发行说明的末尾找到所有贡献者的完整列表,但也有许多其他贡献者通过报告错误或保持我们的服务器和基础设施运行提供了帮助。

As always, the new release will be available in the Qt installer. You can also get the release from our download page or your Qt Account page.

​一如既往,新版本将在Qt安装程序中提供。您也可以从我们的下载页面或您的Qt帐户页面获得该版本。

Enjoy!

### 回答1: Qt 6.3Qt开发框架的一个版本,它提供了一套丰富的工具和功能,用于开发跨平台的应用程序。为了帮助开发者更好地使用Qt 6.3Qt官方提供了一份完整的帮助文档,其中包括了中文版。 Qt 6.3帮助文档中文版非常详细全面,涵盖了Qt的各个方面。文档内容包括了Qt的安装和配置指南、基础知识、常见问题解答等等。无论是初学者还是有经验的开发者,都可以根据自己的需求查阅相关内容。 在Qt 6.3帮助文档中,开发者可以找到各种API文档,这些文档详细介绍了Qt框架中各个类和函数的使用方法和功能。这对于编写和调试代码非常有帮助。此外,文档中还包含了示例代码和教程,帮助开发者更好地理解和应用Qt的各个功能。这对于初学者来说尤为重要。 Qt 6.3帮助文档中文版的一个优点是语言简练清晰,容易理解。无论是初学者还是有经验的开发者,都能够轻松阅读并理解文档中的内容。 总之,Qt 6.3帮助文档中文版是Qt开发者的重要参考资料,它为开发者提供了全面的信息和指导,帮助他们更好地使用Qt框架开发应用程序。无论是获取基础知识还是解决具体问题,都可以在Qt 6.3帮助文档中找到答案。 ### 回答2: 目前,Qt 6.3的帮助文档中尚未提供中文版。Qt是一款流行的跨平台应用开发框架,其文档一直以来都提供了包括英文、德文、法文等在内的多种语言版本,但中文版尚未正式发布。 不过,对于有中文阅读需求的开发者和用户来说,可以通过一些其他方法来获取帮助信息。首先,Qt的官方论坛和社区是一个很好的资源,里面有很多中文用户和开发者,可以在这里提问和寻求帮助。其次,互联网上有很多翻译的Qt教程和指南,可以通过搜索来找到中文的Qt学习资料。此外,在一些技术社区和博客上也有很多关于Qt的中文文章和经验分享可供参考。 对于想要在Qt开发中使用中文帮助文档的用户来说,可能需要等到Qt官方发布中文版的帮助文档,或者以后的版本中推出中文支持。同时,Qt的英文文档也是非常丰富和详细的,对于有一定英文阅读能力的开发者来说,阅读英文文档也是一个很好的选择。 总之,虽然Qt 6.3的帮助文档中文版暂时不存在,但通过官方论坛、互联网搜索以及一些中文教程和文章,我们仍然能够找到一些中文资源并获取帮助。 ### 回答3Qt 6.3 是一种跨平台的应用程序开发框架,具有强大的功能和广泛的应用领域。为了方便开发人员使用和学习 QtQt 公司提供了详细的帮助文档。这些文档旨在向开发人员提供有关 Qt 框架的所有方面的信息和指导。 Qt 6.3 帮助文档中文版是 Qt 官方文档的中文翻译版本。它包含了 Qt 的核心概念、编程指南、示例代码和详细的 API 参考等。通过阅读帮助文档,开发人员可以了解如何使用 Qt 的各种功能和模块来开发高效、稳定和易维护的应用程序。 Qt 6.3 帮助文档中文版涵盖了范围广泛的主题,包括用户界面设计、图形和绘图、数据处理、网络编程、多线程和并发、数据库访问等。它还提供了丰富的示例代码和教程,帮助开发人员更好地理解和应用 Qt 的各种功能。 Qt 6.3 帮助文档中文版可以通过 Qt 官方网站或 Qt Creator 开发环境中的帮助菜单直接访问。它提供了快速搜索和导航功能,让开发人员可以方便地查找他们需要的信息。 总之,Qt 6.3 帮助文档中文版是 Qt 开发人员的重要参考资料,它提供了全面的文档和指南,帮助开发人员快速上手和开发高质量的应用程序。无论是初学者还是有经验的开发人员,都可以从中获得宝贵的帮助和指导。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值