Qt 6 Released
Thursday, 17 December 2020

Qt 6 has been released with improvements including a new graphics architecture and programming language improvements. The tools within Qt have also been unified and made easier to use.

Qt is a cross-platform application and UI software development framework that lets you create native apps for desktop, embedded or mobile platforms. Qt started life as a widget library written in C+ with bindings to other languages including Python, Rust, Go, Java and JavaScript. Qt's advantages are its wide set of user interface and data visualization modules.


The first improvements to the new release are to the graphics architecture. The Qt rendering hardware interface now supports Direct 3D, Metal, Vulkan and OpenGL, meaning developers can write rendering code once then deploy to any supported hardware. There's also a new Quick 3D option that lets you merge 2D and 3D content with one stack. HiDPI fractal scaling support has been added to support automatic UI scaling for different monitor configurations.

The support for programming languages has also been improved. The QProperty system adds binding support in C++, and the developers say this brings the best part of QML to Qt with seamless integration to QObject. The concurrency APIs have been revamped so developers can use mutiple CPUs, parallel computation and concurrency to keep user interfaces fluent while doing backend logic in the background. The APIs automatically scale tasks depending on the hardware.

Strings and Unicode support has been improved, and Qt has been fully aligned with Unicode. QList has also been improved.

Networking has been improved and developers can create custom protocol backends and integrate these into the default Qt workflow.

The C++ support has been updated to C++17 with improved code readability, better performance​ and easier maintenance, and CMake support has been added.

Qt 6 for Python has also been released, with many of the same improvements. For Qt for Python, Shiboken, the Python binding generator that Qt for Python uses to create the PySide module, has been radically reorganized and reworked with new features.

The developers say that for the binding generation, they've added more options to the type system, for example enabling selecting the order of function overloads to use in the decisor. They've also made it possible to declare properties. On the C++ support for the binding generation, the interaction with smart pointers has been improved and extended to handle the modern C++ features used in Qt 6 including the template type alias from QVector to QList, new exception specification keywords, and operators written as hidden friends.



More Information

Qt Download Page

Related Articles

Qt for Python Released

Qt May Move To Paid Model  

Qt 5.6 Released

Qt 5.5 Released

Qt 5.4 Released

Qt’s New Home

Qt 5.3 Released

Qt 5.2 Released

Digia Buys Qt Development Platform


To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.


Apache Pekko 1.0 Released

Apache has released version 1 of Pekko, an open source toolkit and runtime simplifying the construction of concurrent and distributed applications on the JVM. Pekko is a fork of Akka and has come abou [ ... ]

Step CI - The API Quality Assurance Framework

Power up your API testing inside your CI workflow with Step CI, a free open-source tool that has also introduced a paid Support Plan.

More News




or email your comment to: comments@i-programmer.info

Last Updated ( Thursday, 17 December 2020 )