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.


Obfuscated C Winners Announced

The winners of the 27th International Obfuscated C Code Contest have been announced, and the source code for the winning entries is available to view and try.

Apache Kafka 2.7 Updates Broker

Apache Kafka, the big data and datastreams platform, has been updated in a new version that the developers say moves closer to replacing ZooKeeper in Kafka with a self-managed metadata quorum.

More News





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

Last Updated ( Thursday, 17 December 2020 )