Qt 6 シリーズの XNUMX 番目のリリースでは、グラフィックおよび UI 開発者とアプリケーション バックエンド向けに多くの新機能を導入しました。
Qt社は先日、フレームワークの新バージョン「Qt 6.5 」のリリースを発表しました。このバージョンでは、Qt 6ブランチの安定化と機能強化に向けた作業が継続されています。
Qt 6.5はLTS(長期サポート)ステータスを取得しました。これは、商用ライセンス所有者に対して3年間アップデートが提供されることを意味します(その他のユーザーに対しては、次のメジャーリリースの6か月前にアップデートが提供されます)。以前のLTSブランチであるQt 6.2のサポートは2024年9月30日まで継続されます。Qt 5.15ブランチのサポートは2025年5月まで継続されます。
Qt6.5の主な新機能
Qt 6.5のこの新バージョンでは、Qt Quick 3D Physicsモジュールが安定化され、完全な互換性が確保されました。このモジュールは、Qt Quick 3Dと連携して、3Dシーンにおけるリアルなオブジェクトの相互作用と動きを実現するための物理プロセスをシミュレートするAPIを提供します。実装はPhysXエンジンに基づいています。
新バージョンにおけるもう一つの注目すべき変更点は、Windowsのダークモードのサポートが追加されたことです。また、アプリケーションがカラーパレットを変更しないスタイルを使用している場合、システムで有効になっているダークテーマとフレームおよびタイトル設定が自動的に適用されます。アプリケーションは、QStyleHints::colorSchemeプロパティを処理することで、システムテーマの変更に対する独自の反応をカスタマイズできます。
Qt Quick Controlsでは、Android用のMaterialスタイルがMaterial 3の推奨事項に準拠しているほか、iOS用の完全なスタイルも用意されており、外観を変更するためのAPIも追加されています(例えば、TextFieldやTextAreaのcontainerStyle、ボタンやポップアップのroundedScaleなど)。
Wayland向けには、 Qtの内部関数で使用されるネイティブWaylandオブジェクトに直接アクセスしたり、Waylandプロトコル拡張機能に渡す必要がある可能性のある最近のユーザー操作に関する情報にアクセスしたりするために、QNativeInterface::QWaylandApplication APIが追加されました。この新しいAPIはQNativeInterface名前空間に実装されており、この名前空間はX11およびAndroidプラットフォームのネイティブAPIにアクセスするための呼び出しも提供しています。
さらに、Android 12プラットフォームのサポートが追加され、このブランチでは大幅な変更が加えられたにもかかわらず、Android 8以降のさまざまなバージョンのAndroidを搭載したデバイスで動作するAndroid用のユニバーサルアセンブリを作成する機能が維持されていることも特筆すべき点です。
Boot2Qt スタックが更新されました。 これは、Qt および QML に基づく環境で起動可能なモバイル システムを作成するために使用できます。 Boot2Qt のシステム環境が Yocto 4.1 (Langdale) プラットフォームに更新されました。
Debian 11 のパッケージが開始され、商用サポートされています。
WebAssemblyプラットフォームの機能が拡張され、 Webブラウザ上で動作し、様々なハードウェアプラットフォーム間で移植可能なQtアプリケーションを作成できるようになりました。Just-in-Time(JIT)コンパイルのおかげで、WebAssemblyプラットフォーム向けに構築されたアプリケーションはネイティブに近いパフォーマンスで動作し、Qt Quick、Qt Quick 3D、およびQtで利用可能な視覚化ツールを活用できます。新バージョンでは、ウィジェットにおけるビデオレンダリングのサポートと、障がいのあるユーザー向けのアクセシビリティ機能が追加されました。
Qt WebEngineウェブエンジンはChromium 110のコードベースにアップデートされ、 Linuxでは、X11およびWaylandベースの環境でVulkanグラフィックスAPIを使用する際に、ハードウェアアクセラレーションによるビデオレンダリングのサポートが実装されました。
目立つ他の変更のうち:
- gRPC プロトコルとプロトコル バッファーをサポートする実験的な Qt GRPC モジュールを追加しました。これにより、gRPC サービスにアクセスし、Protobuf を使用して Qt クラスをシリアル化できます。
- macOS では、QMessageBox または QErrorMessage を使用するアプリケーションは、ネイティブ プラットフォーム ダイアログを表示することが保証されています。
- Qt Network モジュールで HTTP 1 接続を構成するためのサポートが追加されました。
CAN メッセージのエンコードとデコード、フレームの処理、DBC ファイルの解析に使用できる実験的な CAN バス クラスを Qt シリアル バス モジュールに追加しました。 - TableView QML タイプは、セルの編集、行と列のサイズ変更、複数のセルの選択などのインタラクティブな機能を実装します。
- Qt Widgets モジュールで提供される QOpenGLWidget クラスに立体視レンダリングのサポートを追加しました。
- 安定性を向上させるために多くの作業が行われ、約 3500 のバグ レポートがクローズされました。
さらに詳しい情報をお知りになりたい場合は、以下のリンクをご覧ください。
Qt 6.5 をダウンロードして入手する
Qt 6.5 の新しいブランチに関心のある方は、Windows、macOS、Linux プラットフォーム、iOS 14 以降、Android 8 以降 (API 23 以降)、webOS、WebAssembly、INTEGRITY、および QNX がサポートされていることを知っておく必要があります。 Qt コンポーネントのソース コードは、LGPLv3 および GPLv2 ライセンスの下で提供されます。
新バージョンは以下のリンクから入手できます。