Evgenii Legotckoi
Evgenii Legotckoi25. Januar 2017 10:07

Qt 5.8 veröffentlicht

Am 23. Januar kündigte die Qt Company die Veröffentlichung von Qt 5.8 mit einer Reihe von Innovationen an, die von ziemlich globaler Natur sind. Lernen wir sie kennen.

Qt Lite

Eines der Hauptthemen von Qt 5.8 ist es, Qt flexibler und einfacher an die Ziele der Benutzer anzupassen, insbesondere für Entwickler eingebetteter Systeme. Qt Lite ist der Codename für ein Projekt, das darauf abzielt, diese Ziele umzusetzen.

Das Ziel der Entwickler von Qt Company war es, Qt einfacher an die Bedürfnisse von Entwicklern anzupassen und gleichzeitig die Verwendung von Funktionen zu vermeiden, die im Projekt nicht benötigt werden. Dies bringt erhebliche Einsparungen bei der Größe der kompilierten Qt-Bibliotheken und der zu entwickelnden Anwendung.

Das bereitgestellte System ist eine lange Reise, bei der ein erheblicher Teil des Systems, das für die Konfiguration von Qt verantwortlich ist, neu geschrieben wurde. Dieses neue System wird von dem befreit, was in den letzten 15 Jahren gewachsen ist, und dies kann auch zu Inkonsistenzen mit der Konfiguration von Qt auf verschiedenen Plattformen führen.

Als Ergebnis wurde ein einheitliches System zum Anpassen verschiedener Teile von Qt erhalten. Darüber hinaus erhalten Benutzer eine flexiblere Qt-Bibliothek in der Anpassung. Und es zielt auch darauf ab, die Entwickler der Qt Company bei der Unterstützung all der verschiedenen Möglichkeiten zur Anpassung und Verwendung von Qt zu entlasten.


Mit dem neuen System können Sie einen Build von Qt erstellen, der für einen bestimmten Fall geeignet ist. Es ist möglich, nicht benötigte Funktionen abzuwählen, wodurch ROM und RAM eingespart werden, wenn die Anwendung auf einem eingebetteten Gerät bereitgestellt wird. Um eine Vorstellung von den Möglichkeiten zur Ressourceneinsparung zu geben, sehen Sie unten ein Bild, das Qt-Stack-Anforderungen zeigt, wenn eine kleine QML-Anwendung ausgeführt wird:

Wie Sie sehen können, ermöglicht das neue Konfigurationssystem eine erhebliche Reduzierung der Größe und spart über 60 % an Binärgröße im Vergleich zu Qt 5.6.

Qt Wayland Compositor

Die Qt Wayland Compositor -API, die als Technologie in der Qt 5.7-Vorschau enthalten war, wird jetzt in Qt 5.8 vollständig unterstützt. Das Modul macht es einfach, Ihren eigenen Wayland Compositor zu erstellen.

Qt Wayland Compositor erleichtert die Implementierung Ihres eigenen Startbildschirms und Anwendungsmanagers. Dies ermöglicht die Erstellung leistungsstarker und flexibler eingebetteter Systeme, bei denen Sie mehrere Anwendungen mit eigenen Benutzeroberflächen haben. Qt Wayland Compositor unterstützt die einfache und transparente Handhabung mehrerer Bildschirme. Dies ist sowohl mit QML- als auch mit C++-APIs möglich.

Weitere Informationen finden Sie in der API-Dokumentation und Beispiele .

Kommunikation und Vernetzung

Qt Serialbus ist jetzt vollständig in Qt 5.8 implementiert. Dadurch können Sie die Qt-API für die Kommunikation und Protokolle über serielle Schnittstellen verwenden. Während es viele verschiedene APIs gibt, enthält diese Version CAN und Modbus.

Qt Network und Web Sockets unterstützen TLS PSK vollständig. Qt Network unterstützt jetzt benutzerdefinierte Diffie-Hellman- und HTTP/2-Optionen in QNetworkAccessManager .

Qt Bluetooth unterstützt BTLE-Peripheriegeräte unter macOS und iOS sowie BTLE-Hubs in WinRT.

Qt 5.8 hat außerdem ein neues Modul Qt Network Authorization als Vorabüberprüfungstechnologie hinzugefügt und unterstützt derzeit die Authentifizierungsschemata OAuth 1 und 2 .

Qt QML und Quick

In Qt QML und Qt Quick ist einiges passiert. Die QML-Engine erhielt Unterstützung für das Caching von QML- und JS-Binärdaten auf der Festplatte, was die Startgeschwindigkeit und den Speicherverbrauch der Engine reduziert. Nur die kommerzielle Version des Qt Quick-Compilers wird derzeit in Qt 5.8 unterstützt, aber diese Änderungen sollen in Zukunft für eine bessere Leistung und stärker integrierte Lösungen hinzugefügt werden.

Der Szenengraph von Qt Quick wurde erheblichen Änderungen unterzogen, um seine Abhängigkeit von OpenGL zu verringern. Auf diese Weise können Sie experimentelle Unterstützung für das Direct3D 12-Backend für Qt Quick hinzufügen, aber die Erstellung anderer Backends ermöglichen, die beispielsweise auf der Vulkan Graphics API basieren.

Außerdem unterstützt die Grafikszene jetzt partielle Bildschirmaktualisierungen, wenn nur ein kleiner Teil geändert wurde. Dies ergibt eine etwas bessere Leistung für Qt Quick 2D-Rendering.

Außerdem werden diese Änderungen an der Grafikszene als Gelegenheit präsentiert, die Rendering-Funktionalität von Qt Quick 2D direkt in Qt Quick zu integrieren. Das bedeutet, dass der Qt Quick 2D-Renderer in Qt 5.8 nicht mehr als separates Modul existiert.

Unter der Haube wurden auch große Änderungen für die Behandlung von Maus- und Berührungsereignissen vorgenommen, die in einer neuen QQuickPointerEvent-Klasse zusammengeführt wurden. Dies bereitet die Voraussetzungen für zukünftige Verbesserungen bei der Behandlung von Maus- und Berührungsereignissen, wirkt sich jedoch derzeit nicht auf Code aus, der Qt Quick verwendet.

Qt Quick Controls 2 erhielt auch mehrere neue Typen, wie Dialogfelder, abgerundete Schaltflächen und Werkzeugtrenner. Material- und universelle Stile, einige neue Effekte und Unterstützung für Systemdesigns.

Qt-Webengine

Wie immer wurde die von Qt Webengine verwendete Chromium-Version auf Version 53 aktualisiert. Ein wichtiger Unterschied ist die zusätzliche Unterstützung für das Drucken Webseiten. Viele kleine funktionale Änderungen wurden ebenfalls hinzugefügt, darunter eine neue QML-API zum Definieren benutzerdefinierter Dialoge, Tooltips und Kontextmenüs sowie Unterstützung für das Durchsuchen von Seitenquellen.

Qt-SCXML

Qt SCXML wird in Qt 5.8 vollständig unterstützt. Das Modul führt eine triviale SCXML -Integration basierend auf der Zustandsmaschine in Qt durch. Dies baut direkt auf dem Qt Statemachine Framework auf und erweitert es mit SCXML- und C++-Compilern und wird zur Laufzeit ausgeführt, was das Laden von SCXML-basiert ermöglicht auf der Zustandsmaschine.

Zusammen mit dem Qt-SCXML-Modul erhielt Qt Creator 4.2 Unterstützung für die Bearbeitung von Zustandsgraphen.

Neue Technologien in der vorläufigen Prüfung

Auch in Qt 5.8 gibt es neue Funktionalitäten, die in einer vorläufigen Überprüfung als Technologie ausgewählt wurden.

Qt ist jetzt sowohl für Apple TV als auch für watchOS kompiliert. Während viele der von iOS unterstützten Funktionen auch auf tvOS funktionieren sollten, ist die Unterstützung von watchOS auf die nicht-grafischen Funktionen von Qt beschränkt.

Qt Speech wurde als neues Modul zur Unterstützung von Text-to-Speech hinzugefügt.

Weitere Verbesserungen

Seit der ersten Veröffentlichung von Qt 3D mit Qt 5.7 haben sich die Bemühungen auf die Verfeinerung des Moduls konzentriert. An diesem Modul wurden zahlreiche Korrekturen und Leistungsverbesserungen vorgenommen.

Qt Charts hat Candlestick (Japanese Candle) und auch die API QOpenGLTextureBlitter in der öffentlichen Qt Gui erstellt.

Eingebettete Plattformen haben Qt unterstützt, um Geräte mit besserer Unterstützung für mehrere Bildschirme mithilfe des eglfs QPA-Plugins und Unterstützung für 90/180-Grad-Bildschirme zu erstellen.

Schließlich wurden viele Änderungen am Kerncode vorgenommen, um die Nutzung der von C++11 angebotenen Funktionalität zu verbessern.

Источник Qt-Blog

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Stabiles Hosting des sozialen Netzwerks EVILEG. Wir empfehlen VDS-Hosting für Django-Projekte.

Magst du es? In sozialen Netzwerken teilen!

Kommentare

Nur autorisierte Benutzer können Kommentare posten.
Bitte Anmelden oder Registrieren
Letzte Kommentare
A
ALO1ZE19. Oktober 2024 08:19
Fb3-Dateileser auf Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
ИМ
Игорь Максимов5. Oktober 2024 07:51
Django – Lektion 064. So schreiben Sie eine Python-Markdown-Erweiterung Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
d
dblas55. Juli 2024 11:02
QML - Lektion 016. SQLite-Datenbank und das Arbeiten damit in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
k
kmssr8. Februar 2024 18:43
Qt Linux - Lektion 001. Autorun Qt-Anwendung unter Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
Qt WinAPI - Lektion 007. Arbeiten mit ICMP-Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Jetzt im Forum diskutieren
J
JacobFib17. Oktober 2024 03:27
добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
JW
Jhon Wick1. Oktober 2024 15:52
Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…
КГ
Кирилл Гусарев27. September 2024 09:09
Не запускается программа на Qt: точка входа в процедуру не найдена в библиотеке DLL Написал программу на C++ Qt в Qt Creator, сбилдил Release с помощью MinGW 64-bit, бинарнику напихал dll-ки с помощью windeployqt.exe. При попытке запуска моей сбилженной программы выдаёт три оши…
F
Fynjy22. Juli 2024 04:15
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …

Folgen Sie uns in sozialen Netzwerken