このページの内容

Qt 6.10の新機能

Qt 6.10 で追加・復活したモジュール

Qt 6.10 では、以下のモジュールとツールが追加されました:

Qt 6.10の新機能

Qt Core モジュール

  • QLocale が CLDR v47 に更新されました
  • QLocale::uiLanguages() には切り捨てられたエントリが含まれるようになり、より適切に順序付けされるようになりました
  • QLocale::toString整数型に対する () のオーバーロードで、精度と幅を指定できるようになりました
  • qDebug() の出力において、同じ言語、文字体系、地域に対する CLDR 由来のロケールと、システムロケールが区別されるようになりました
  • QLocale::toString(double, ...) の指数区切り記号は、指定された形式に再び一致するようになりました
  • QCalendar::daysInMonth() は、年が指定されていない場合、最大値を返すようになりました
  • 新しいQRangeModel クラスは、任意の C++ 範囲で動作可能なQAbstractItemModel の実装を提供します。
  • QXmlStreamReader::readRawInnerData() は、要素の生の内部 XML コンテンツを取得するためのものです。
  • Error 列挙型、error()、errorString()、およびraiseError() 関数を備えた、QXmlStreamWriter のエラー処理 API。
  • QXmlStreamWriter::stopWritingOnError() プロパティにより、エラーが発生した直後に出力を停止するかどうかをユーザーが制御できるようになりました。
  • QFuture::cancelChain() を追加し、チェーン内の未完了のQFuture を使用して、継続チェーン全体をキャンセルできるようにしました。
  • 新しいqEnvironmentVariableIntegerValue は、環境変数の数値を返します。変数が設定されていない場合や整数を保持していない場合は、std::nullopt を返します。
  • QFileInfo::isOther() は、ディレクトリ、通常ファイル、シンボリックリンクのいずれでもないファイルシステムエントリに対して true を返します。
  • 以前のendFilterChange()の呼び出しとバランスを取るため、Direction パラメータを受け取るQSortFilterProxyModel::endFilterChange()が追加されました。これらのAPIはinvalidateFilter()に代わるものであり、 ()はQt 6.13以降で非推奨となります。
  • QMetaObject::connect() の 2 つの新しいオーバーロードにより、シグナルのQMetaMethod をスロット関数またはラムダ式に接続できるようになりました。
  • QCborValue::toStringView() およびQJsonValue::toStringView() は、割り当てを行うことなく、value に格納されている文字列のビューを返します。
  • QDataStream::operator bool() およびQTextStream::operator bool() を使用して、ストリームがエラー状態にあるかどうかを確認します。
  • nullTerminate() を使用すると、QByteArray やQString にヌル終端文字を追加できます(例:QByteArray::fromRawData() によってそれらを構築した後)。nullTerminated() を使用して、配列または文字列がヌル終端されているかどうかをテストします。
  • QByteArray は、std::string_view への暗黙的な変換が可能になりました。

Qt D-Bus モジュール

Qt Graphs モジュール() は、指定されたバスサービスを現在保持しているプロセスの接続認証情報を返します。

Qt GRPC モジュール

Qt GUI Module

  • QStyleHints::accessibility は、システムでコントラスト強化の設定が有効になっているかどうかなど、ユーザーのアクセシビリティ設定へのアクセスを提供します。
  • 個々のアクセシビリティ設定にアクセスするためのQAccessibilityHints が追加されました。
  • QRhi: Direct 3D 11、12、または Vulkan 上で実行する場合、enumerateAdapters() 関数を介して 3D グラフィックスアダプタ(物理デバイス)を列挙するサポートが追加されました。
  • QPainterPath::setCachingEnabled() を使用すると、計算された値のキャッシュを有効にすることができ、メモリ使用量が増える代わりに、特定の操作のパフォーマンスを向上させることができます。
  • パスの一部を返すQPainterPath::trimmed()が追加されました。

Qt HttpServer モジュール

Qt Lottie Animation

  • solid、null、および precomposition レイヤーのサポートを追加しました。
  • lottietoqmlツールを追加しました。これはsvgtoqmlと同等のツールであり、Lottie ファイルを QML で記述されたQt Quick シーンに変換します。現在、テクニカルプレビュー段階です。
  • VectorImage 用のプラグインを追加し、SVGに加えてLottieファイルも読み込めるようにしました。この機能はテクニカルプレビューであり、assumeTrustedSource をtrue に設定する必要があります。
  • lottietoqml Exampleおよびqtlottieviewer Exampleを追加し、以下の使用方法を示しました Qt Lottie Animation。

Qt Multimedia モジュール

  • ネイティブな PipeWire オーディオバックエンドを追加しました。
  • 優れたSignalsmith Stretch ライブラリに基づいた、FFmpeg ベースのQMediaPlayer のオーディオピッチ補正。この動作は、pitchCompensation プロパティを使用してカスタマイズできます。
  • QCapturableWindow QWindow から、C++ および QML の両方で構築できるようになりました。
  • QPlaybackOptions という新しいクラスが追加され、ユーザーは、再生インテント、ネットワークタイムアウト、プローブサイズなど、FFmpegのメディア再生に関する低レベルのオプションを制御できるようになりました。
  • QAudioSink およびQAudioSource に、バイト数ではなくフレーム数で基になるオーディオバッファを操作できるメソッドが追加されました。

Qt Network モジュール

  • QSslCertificate に fromFile() メソッドを追加しました。
  • QHttpHeaders に、HTTP ヘッダーの日付および時刻の値を設定するための便利なメソッドである setDateTimeValue() を追加しました。
  • QHttpHeaders に、QDateTime 、整数、またはこれらの型のリストとして値を取得するための便利メソッドを追加しました。

Qt Protobuf モジュール

  • 生成された Protobuf メッセージにQt Protobuf Mutable Getters を追加し、mut プレフィックスを使用してアクセスできるようにしました。

Qt Qml モジュール

  • QML ファイルでツリー構造を定義でき、TreeView と連携する新しいTreeModel QML タイプを追加しました。
  • モデルデータのソートおよびフィルタリングを行うためのSortFilterProxyModel QMLタイプを追加しました。この機能はテクニカルプレビュー段階です。
  • DelegateModel およびすべてのビューに delegateModelAccess プロパティが追加されました。これにより、必須プロパティを介してモデルに値を書き込むことができるようになりました。
  • Synchronizer QML タイプが追加されました。Synchronizer は、バインディングを使用せずに 2 つ以上のプロパティを同期させます。この機能はテクニカルプレビュー段階です。
  • qmlformatにセミコロンに関するカスタマイズルールを追加しました。JSステートメントの末尾にセミコロンを追加するかどうかを制御できるようになりました。
  • Qt Creator との互換性向上に焦点を当てた新しい qmllint 警告が追加されました。これには、Qt Design Studio 固有の制限に関するチェック、JavaScript 関連の追加警告、および QML の列挙型やインポートに関連するいくつかの新しい警告が含まれます。
  • TableModel からの複雑な行構造の操作に対するサポートを削除しました。
  • 曖昧さを解消するため、TableModel::setData における role パラメータと value パラメータの順序を変更しました。

Qt Quick モジュール

  • CSS Flexboxと同様に、クイックアイテムを柔軟に配置するためのFlexboxLayout QML型が追加されました。この機能はテクニカルプレビュー段階です。

Qt Quick コントロールモジュール

  • FluentWinUI3 スタイルにおいて、Windows 11 でのコントラストテーマのサポートが改善されました。
  • SearchField コントロールを追加しました。

Qt Quick ダイアログモジュール

  • popupType プロパティが追加されました。これを使用すると、非ネイティブのダイアログを別ウィンドウで開くか、既存のシーン内のアイテムとして開くかを制御できます。ネイティブのダイアログを使用する場合は、この設定は効果を持ちません。

Qt Quick エフェクトモジュール

Qt Quick 3D モジュール

  • シェイプエミッターに `emitMode ` を追加し、シェイプの表面法線に基づいてパーティクルを放出できるようにしました。
  • reversed エミッタを実装し、パーティクルが終了時刻から開始時刻まで逆方向に流れるようにしました。
  • ライトマップに関連するいくつかの改善と変更:
    • 「texels-per-unit」ベースのライトマップサイズを導入し、「Model::texelsPerUnit 」および「Lightmapper::texelsPerUnit 」プロパティを追加するとともに、非推奨となった「Model::lightmapBaseResolution 」プロパティを置き換えました。
    • シーン全体に対して単一のライトマップソースを設定するための `Lightmapper::source ` プロパティを導入し、`BakedLightmap::loadPrefix` に取って代わり、後者は非推奨となりました。
    • Lightmapper::denoiseSigma プロパティを介して制御される、ベイク済みライトマップ用の組み込みGPUベースのNon-local Means (NLM) ノイズ除去機能を追加しました。
    • ライトマップのベイクウィンドウが改良され、進行状況バーと残り時間の推定値が表示されるようになりました。
    • ベイク処理は独自の RHI コンテキストで実行されるようになり、実行中のアプリケーションのレンダリングをブロックしなくなりました。
    • 特定のシーンをベイクする際の RAM および VRAM の使用量が削減されました。
    • GUI またはコマンドラインからベイクされたライトマップファイルをデバッグするためのライトマップビューアツールが追加されました。
  • glTF2 の baseColorFactor に対する色のインポートを修正し、リニアから sRGB へ正しく変換することで、仕様に準拠させました。
  • QtQuick3D にCapsuleGeometry を追加しました。テクスチャが固定され、非同期作成がサポートされ、uvProfileプロパティが公開されたHelpersです。

Qt Quick 3D XR モジュール

  • 空間アンカー用のルームスキャンを要求するためのmethod を公開しました。

Qt Quick 3D 物理モジュール

Qt Quick VectorImageモジュール

  • Qt SVG のアニメーション機能に対応した、アニメーション付きSVGのサポートを追加しました。
  • ソースファイルが信頼できるかどうかを示すために、API が追加されました。
  • アニメーションの挙動を制御するためのAPI を追加しました。
  • によって提供されるプラグインを組み込むことで Qt Lottie Animationが提供するプラグインを組み込むことで、VectorImage はLottieファイルも表示できるようになりました。この機能はテクニカルプレビューと見なされており、assumeTrustedSource をtrue に設定する必要があります。

Qt Serial Port モジュール

  • writeBufferSize プロパティを使用して書き込みバッファのサイズを制限する機能が追加されました。

Qt Serial Bus モジュール

  • QCanBusDeviceInfo に欠けていた move コンストラクタを追加しました。
  • QCanBusFrame::FrameType およびQCanBusFrame::FrameError を QMetaEnums に変更しました。
  • SocketCAN プラグインは、実行時の警告を回避するため、デフォルトのビットレートを設定しなくなりました。ビットレートの設定は、システム手段であるip link set ... 、または libsocketcan およびQCanBusDevice::setConfigurationParameter(QCanBusDevice::BitRateKey など) によって行う必要があります。
  • VirtualCANプラグインは、can0からcan9までの最大10個の仮想CANチャネルをサポートするようになりました。

Qt SQL モジュール

Qt SVG モジュール

  • fill-opacity、stroke-opacity、および opacity プロパティに対する CSS アニメーションのサポートが追加されました。
  • SVG ファイルを表示する方法を示す例が追加されました。

Qt Test モジュール

  • データ駆動型ベンチマークにおいて、グローバルデータとローカルデータの両方をプレーンテキスト名で識別できるようになりました
  • Apple Silicon 上で、lldb からのバックトレースが無効化されるようになりました
  • QTest が比較で浮動小数点値を出力する際、完全な精度で表示され、hexfloat バージョンも含まれるようになりました

Qt VirtualKeyboard モジュール

  • サードパーティソースの帰属ファイルに PURL および CPE 情報を追加しました。
  • ラトビア語のキーボードレイアウトが追加されました。

Qt WebEngine モジュール

Qt WebView モジュール

  • Windowsプラットフォーム向けのWebView2プラグインを追加しました。新しいバックエンドは、ChromiumベースのEdgeブラウザのネイティブCOM APIであるWebView2を使用しています。これにより、Qt WebEngine を同梱することなくWebコンテンツを提供できるようになりました。

Qt Widgets モジュール

  • fusion、macOS、およびWindows 11のウィジェットスタイルに対し、高コントラストモードのサポートが追加されました。
  • アイテムビューにおけるデフォルトのエディタイベント処理は、新しいQAbstractItemDelegate::handleEditorEvent()関数に移行しました。カスタムイベントハンドラはこの関数を使用して、標準的なイベント処理を継続することができます。
  • QListWidget 、QTableWidget 、およびQTreeWidget でsetSupportedDragActions() を使用すると、サポートされるドラッグ操作を変更できます。
  • 新しいQLayout::horizontalSizeConstraint およびQLayout::horizontalSizeConstraint プロパティを使用すると、ウィジェットの水平および垂直のサイズ制限を個別に設定できます。

Qt XML モジュール

Qt MQTT モジュールモジュール

  • WebSockets/Secure WebSockets のサポートを追加

ツール

QDoc ドキュメントジェネレータ

  • QDoc では、すべての C++ API 宣言に「ソースを表示」リンクを自動的に追加できるようになりました。この機能は、新しいurl.sourcesファミリーの設定変数 (url.sources.enabled 、url.sources.rootdir 、url.sources.linktext) を使用して有効にします。
  • QDocは、フロイドのサイクル検出アルゴリズムを使用してQML型における循環継承を検出し、無限ループに陥ることなく問題を報告するようになりました。
  • .qml ファイルで定義された QML プロパティグループは、\qmlproperty コマンドを使用してドキュメント化すると、単一のグループ化されたプロパティとして認識・表示されます。
  • Qt XML ツール(moc_ 、uic_ 、qrc_ など)によって生成されたソースファイルは自動的にスキップされるようになり、大規模なプロジェクトでの QDoc のビルド時間が短縮されます。
  • .qml ファイル内で QML プロパティに対して表示されるデータ型は、エイリアス設定されていないプロパティであっても、\qmlproperty コマンド内で直接上書きできるようになりました。
  • documentationinheadersオプションは、もはやテクノロジープレビューとして提供されるものではなく、安定版と見なされるようになりました。このオプションは Qt 6.9 で初めて導入されました。
  • DocBook 出力を生成する際、QDoc はオーバーロードに関する注記を含めるようになりました。
  • オーバーロードされたシグナルおよびスロットには、その使用例を示すコンテキストスニペットが含まれるようになりました。
  • QDoc は、LLVM 21 の Clang ライブラリに対してリンクできるようになりました。
  • .index-files には、\fn-commands で宣言された戻り値の型が含まれるようになりました。これは、作成者がauto を使用して関数の戻り値の型をオーバーライドする場合など、マルチプロジェクトのビルドで役立ちます。
  • 新しい \qmlenum コマンドを使用して、QML列挙型をドキュメント化できるようになりました。QDocは、生成されたドキュメント内に「QML列挙型」という新しいセクションを作成します。
  • コードスニペットのインデントが正規化され、余分な左マージンの空白が削除されるようになりました。これにより、インデントが深いソース(たとえば、深くネストされた一連のif-statements など)からのスニペットも、ネストされていないかのように表示されます。
  • QDoc は、デフォルトパラメータを持つテンプレートエイリアスを正しく解析するようになりました。
  • 非推奨の関数に対して、非推奨ではない代替関数が存在する場合、QDoc はもはやその関数への自動リンクを行わなくなりました。
  • 新しい\notranslate-commandを使用することで、文字列の機械翻訳を防止できるようになりました。

Qt Linguist

  • Qt Linguist および lupdate で、ID ベースの翻訳をカスタムラベルで整理する機能が追加されました。
  • Qt Linguist に QML フォームプレビュー機能が導入され、文脈に応じた翻訳の視覚的な検証が可能になりました。
  • Qt Linguist の UI を刷新し、新しいアイコン、改良されたカラーパレット、ダークモードへの対応を改善しました。
  • lupdate および lrelease は、同一のドキュメント内で ID ベースの翻訳とテキストベースの翻訳を混在させることをサポートするようになりました。
  • lupdate から Clang ベースのパーサーを削除しました。
  • lupdate において、異なるプログラミング言語間でメタ文字列(//: や //~ などのコメント)のサポートを統一しました。
  • ドキュメントに新しい i18n の例を追加しました。
  • lrelease には、未完了の翻訳がある場合にビルドを失敗させる -fail-on-unfinished オプションが追加されました。
  • テキストベースの翻訳の ID を設定するための//= メタ文字列コメントの使用は非推奨となりました。

プラットフォームの変更

ビルドシステムの変更

  • プライベート Qt モジュール Foo を使用するには、Qt6::FooPrivate ターゲットを利用可能にするためにfind_package(Qt6 COMPONENTS FooPrivate) を呼び出す必要があります。
  • qt_add_resources() にDISCARD_FILE_CONTENTS オプションが追加されました。
  • Qt 6.6.0 で非推奨となっていたqt6_generate_deploy_[app_]script のFILENAME_VARIABLE オプションが削除されました。
  • qt_deploy_runtime_dependencies にNO_PLUGINS 引数を追加しました。これにより、プラグインのデプロイが完全に無効化されます。
  • qt_deploy_runtime_dependencies に、INCLUDE_PLUGIN_TYPES 、EXCLUDE_PLUGIN_TYPES 、INCLUDE_PLUGINS 、およびEXCLUDE_PLUGINS の引数が追加されました。
  • qt_generate_deploy_app_script に、Qt プラグインを選択するための引数を追加しました。
  • qt6_import_plugins Linux での CMake デプロイ API によるプラグインのデプロイに対して、もはや何の影響も及ぼさなくなりました。
  • qt6_deploy_runtime_dependencies Linux 上で、INCLUDE_PLUGINS 、INCLUDE_PLUGIN_TYPES 、EXCLUDE_PLUGINS 、EXCLUDE_PLUGIN_TYPES のプラグイン選択フラグがサポートされるようになりました。
  • qt_add_qml_module() にDISCARD_QML_CONTENTS オプションが追加され、ターゲットのリソースシステムから元の QML および JS ファイルの内容が削除されるようになりました。

デスクトッププラットフォーム

Windows

  • ARM 版 Windows のプリビルドバイナリには、QtWebEngine およびQtWebView も含まれています。

Linux

  • Linux デスクトップ用のプリビルドバイナリは、RHEL9 を使用してビルドされるようになり、glibc の最小要件が 2.28 から 2.34 に引き上げられました。

macOS

  • 拡張ダイナミックレンジ(EDR)を有効にしている Windows では、画面の明るさが変化した際に expose イベントが発生するようになりました。
  • titleUIElement アクセシビリティプロパティがサポートされるようになりました
  • サービスメニューの統合において、リッチテキストに対応するようになりました
  • QOperatingSystemVersion::MacOSTahoe macOS 26 を表します
  • WhatsThisCursor および BusyCursor のマッピングが追加されました
  • QImage::toCGImage() が画像の色空間を伝播するようになりました

Linux 上の Wayland クライアント

モバイルプラットフォーム

Android

Android 向け Qt
  • Gradle をバージョン 8.14.2 に、Android Gradle Plugin (AGP) をバージョン 8.10.1 に更新しました。
  • Android 12 のスプラッシュスクリーンに対応しました。
  • Android 16KB ページサイズへの対応を追加しました。
  • コードジェネレータ(QtJenny)によって生成された C++ ラッパーを介して Android API にアクセスするためのサンプル(QtJennyDemo)を追加しました。
  • サポートされるプラットフォームの最大バージョンを Android 16 (API 36) に変更しました。
Qt Quick Android 用
  • QtQuickView におけるシグナルの複数引数への対応を追加しました。
  • QML が完全に読み込まれる前にシグナルリスナーを登録する機能を追加しました。
  • javadoc 形式の公開 Java API。

iOS

  • Apple Pencil 向けのQPointingDevice のサポートを追加しました。
  • 標準の Apple Pencil の回転を修正しました。
  • Apple Pencil 第2世代以降のホバー機能に対応しました
  • 拡張ダイナミックレンジ(EDR)を有効にしているWindowsでは、画面の明るさが変化した際にエクスポーズイベントが発生するようになりました
  • アプリがアクティブ状態でなくなった際、更新リクエストが一時停止されるようになりました
  • QScreen 画面の向きが反転している場合も報告されるようになりました
  • RLIMIT_STACK が有効なスタックサイズを反映するようになりました
  • QImage::toCGImage() が画像の色空間を伝播するようになりました

組み込みプラットフォーム

Boot to Qt

リアルタイムオペレーティングシステム

  • リアルタイムオペレーティングシステムのサポートは、LTSリリースのみ提供されます。LTS以外のリリースについては、プロフェッショナルサービスを通じてのみサポートが利用可能です。

Qt 6.10 で非推奨となったモジュール

以下のモジュールは非推奨となりました。新しいコードでの使用は強く推奨しません。

Qt Charts および Qt DataVisualization モジュールは非推奨となりました。これらは引き続きライセンス対象ソフトウェアの一部であり、Qt Project の一部としても残ります。ただし、新しいコードを作成する際には、 Qt Graphsを使用することを推奨します。また、{Qt Graphs Qt Charts からの移行 }{Qt Charts からの移行 } および Qt Data Visualization からの移行 に関するドキュメントも参照してください。

Qt におけるモジュールのライフサイクルに関する詳細については、QUIP-14 を参照してください。

APIの変更点のリスト

これらのページには、Qt 6.10 における API の変更点の概要が記載されています:

既知の問題

Qt 6.10 の既知の問題については、Qt Wiki を参照してください。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.