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 enum、error()、errorString()、raiseError() 関数によるQXmlStreamWriter のエラー処理 API。
- QXmlStreamWriter::stopWritingOnError() プロパティを追加し、エラー発生直後に出力を停止するかどうかを制御できるようにした。
- QFuture::cancelChain() が追加され、チェインから終了していないQFuture を使用して継続チェイン全体をキャンセルできるようになった。
- 新しいqEnvironmentVariableIntegerValue は環境変数の数値を返し、変数が設定されていないか整数を保持していない場合は
std::nullopt
を返す。 - QFileInfo::isOther() は、ディレクトリでも通常ファイルでもシンボリックリンクでもないファイルシステム・エントリに対して真を返します。
- Direction パラメータを取るQSortFilterProxyModel::endFilterChange() を追加し、以前のendFilterChange() 呼び出しとのバランスをとるようにした。これらの API はinvalidateFilter() を置き換えるもので、Qt 6.13 からは非推奨となります。
- QMetaObject::connect() の2つの新しいオーバーロードは、シグナルのQMetaMethod をスロット関数やラムダに接続することを可能にします。
- QCborValue::toStringView() とQJsonValue::toStringView() は、値に格納された文字列のビューを、割り当てなしで返します。
- QDataStream::operator bool() とQTextStream::operator bool() を使用して、ストリームがエラー状態にあるかどうかをチェックする。
- QByteArray またはQString にヌル・ターミネータを追加するには、QByteArray::fromRawData() を使用してそれらを構築した後などに、nullTerminate() を使用する。isNullTerminated() を使用して、配列または文字列が NULL 終端であるかどうかをテストします。
- QByteArray は暗黙的に std::string_view に変換できるようになりました。
Qt DBus モジュール
- QDBusConnectionInterface::serviceCredentials() は、指定されたバスサービスを現在保持しているプロセスの接続認証情報を返します。
Qt Graphs モジュール
- 塗りつぶしサーフェスグラフが追加されました:DrawFilledSurface
- 2D 軸のテキスト非表示をサポートしました:QAbstractAxis::textElideMode
- 小さなサイズの円グラフのラベル非表示のサポートが追加されました:QPieSeries::angleSpanVisibleLimit,QPieSeries::angleSpanLabelVisibility 、QPieSeries::LabelVisibility
- 2D グラフの多軸サポート追加:QAbstractSeries::axisX 、QAbstractSeries::axisY
- 2D シリーズのホバーサポートを追加:QAbstractSeries::isHovered
- 2D グラフにおけるプロット領域のクリッピングコントロールをサポート:clipPlotArea
- LineSeries でのデータポイント座標のクエリーサポートを追加しました:QLineSeries::dataPointCoordinatesAt
- Bars3D およびSurface3D における画像へのスライスレンダリングのサポートQ3DBarsWidgetItem::renderSliceToImage,Q3DSurfaceWidgetItem::renderSliceToImage を追加、QtGraphs3D::SliceCaptureType
- Bars3DNode,Scatter3DNode,Surface3DNode を追加。View3Ds 内のQtQuick3D アプリケーションに 3D グラフを追加。
- 2Dグラフのグラフ描画順序のサポートを追加QAbstractSeries::zValue
- DateTimeAxis のタイムゾーン設定オプションを追加:QDateTimeAxis::timeZone
- カテゴライズされたロギングのサポートが追加された
Qt GRPC モジュール
- QGrpcHttp2Channel のパフォーマンス向上とバグフィックス。
unix-abstract
Transportation scheme QGrpcHttp2Channel を追加した。- QGrpcOperation にserverInitialMetadata とserverTrailingMetadata インターフェイスを追加。
- 受信したサーバー・メタデータのフィルタリングを制御するQGrpcCallOptions::filterServerMetadata とQGrpcChannelOptions::filterServerMetadata オプションを追加。
- クライアント・メタデータのインクリメンタルな更新をサポートするためにQGrpcCallOptions::addMetadata とQGrpcChannelOptions::addMetadata を追加。
- QMultiHash ベースのインターフェイスmetadata(QtGrpc::MultiValue),setMetadata(QMultiHash) を採用するため、metadata インターフェイスを廃止。
Qt GUI モジュール
- QStyleHints::accessibility は、システムがコントラストを上げる設定を有効にしているかどうかなど、ユーザーのアクセシビリティ設定へのアクセスを提供します。
- 個々のアクセシビリティ設定にアクセスするために、QAccessibilityHints を追加しました。
- QRhi:Direct 3D 11、12、または Vulkan で動作している場合に、enumerateAdapters() 関数を使用して 3D グラフィックス・アダプタ(物理デバイス)を列挙できるようになりました。
- QPainterPath::setCachingEnabled() 関数を使用して計算値のキャッシュを有効にすることで、メモリの追加使用を犠牲にして特定の操作のパフォーマンスを向上させることができます。
- パスのセクションを返すQPainterPath::trimmed() が追加されました。
Qt HttpServer モジュール
- QHttpServerConfiguration にサブネットのホワイトリストとブラックリストを追加した。
- QHttpServerConfiguration に設定可能なキープアライブタイムアウトを追加。
- QHttpServerRequest をコピー可能にした。
Qt Lottie Animation
- ソリッドレイヤー、ヌルレイヤー、プレコンポジションレイヤーのサポートを追加。
- lottietoqmlツールを追加。これはsvgtoqmlと同等のツールで、LottieファイルをQMLで記述されたQt Quick シーンに変換します。現在技術プレビュー中です。
- VectorImage 、SVGに加えてLottieファイルを読み込めるようにするプラグインを追加しました。この機能は技術プレビューで、assumeTrustedSource を
true
に設定する必要があります。 - lottietoqmlのサンプルとqtlottieviewerのサンプルを追加しました。 Qt Lottie Animation.
Qt Multimedia モジュール
- ネイティブのPipeWireオーディオバックエンドを追加。
- 優れたSignalsmith Stretch ライブラリに基づく、FFmpeg ベースのQMediaPlayer のオーディオピッチ補正。動作はpitchCompensation プロパティでカスタマイズできます。
- QCapturableWindow C++ と QML の両方でQWindow から構築できるようになりました。
- 新しいクラスQPlaybackOptions を追加し、ユーザーが低レベルの FFmpeg メディア再生オプション(例えば、再生インテント、ネットワーク・タイムアウト、プローブ・サイズなど)を制御できるようにしました。
- QAudioSink とQAudioSource で、ユーザーがバイトカウントではなくフレームカウントで基礎となるオーディオバッファを操作できるメソッドを追加。
Qt Network モジュール
- QSslCertificate に fromFile() メソッドを追加。
- HTTP ヘッダーに日付と時刻の値を設定するための便利なメソッド setDateTimeValue() をQHttpHeaders に追加。
- QDateTime 、整数、またはこれらの型のリストとして値を取得するための便利なメソッドをQHttpHeaders に追加した。
Qt Protobuf モジュール
- 生成された Protobuf メッセージにQt Protobuf Mutable ゲッターを追加し、
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 から複雑な行構造の操作のサポートを削除しました。
Qt Quick モジュール
- CSSのFlexboxに似た柔軟な方法でクイックアイテムを配置するためのFlexboxLayout QMLタイプを追加しました。この機能は技術プレビュー中です。
Qt Quick Controls モジュール
- FluentWinUI3 スタイルで、Windows 11 のコントラストテーマのサポートが改善されました。
- SearchField コントロールを追加しました。
Qt Quick Dialogs モジュール
- 非ネイティブダイアログを別ウィンドウで開くか、既存シーンのアイテムとして開くかを制御するために使用できるプロパティpopupType を追加しました。これは、ネイティブダイアログを使用する場合には影響しません。
Qt Quick Effectsモジュール
Qt Quick 3Dモジュール
- シェイプされたエミッタにエミットモードを追加し、シェイプのサーフェス法線に基づいてパーティクルを放出できるようにしました。
- reversed エミッターを実装し、パーティクルを終了時間から開始時間まで実行できるようにしました。
- ライトマップ関連のいくつかの改善と変更:
- Model::texelsPerUnit 、Lightmapper::texelsPerUnit プロパティを追加し、現在は非推奨のModel::lightmapBaseResolution プロパティを置き換えました。
- シーン全体に1つのライトマップ光源を設定するLightmapper::source プロパティを導入し、BakedLightmap::loadPrefix を置き換え、非推奨としました。
- Lightmapper::denoiseSigma プロパティによって制御される、ベイクされたライトマップのためのGPUベースのNon-local Means (NLM)ノイズ除去をビルトインで追加。
- ライトマップのベイクウィンドウが改善され、プログレスバーと残り時間の見積もりが表示されるようになりました。
- ベイクは独自の RHI コンテキストで行われるようになり、実行中のアプリケーションのレンダリングをブロックしません。
- 特定のシーンのベイク時に RAM と VRAM の使用量が減少しました。
- ベイクされたライトマップ ファイルを GUI またはコマンドラインでデバッグするためのライトマップ ビューア ツールが追加されました。
- glTF2 baseColorFactor のカラーインポートを修正し、linear から sRGB に正しく変換して、仕様に合わせました。
- QtQuick3D.Helpers に、固定テクスチャ、非同期作成のサポート、および公開された uvProfile プロパティを含むCapsuleGeometry を追加。
Qt Quick 3D XRモジュール
- 空間アンカーのルームスキャンをリクエストするためのmethod を公開。
Qt Quick 3D Physics モジュール
- CapsuleGeometry を非推奨とし、QtQuick3D の改良版を採用。
Qt Quick VectorImageモジュール
- Qt SVG のアニメーション・サポートと一致するアニメーションSVGのサポートを追加。
- ソース・ファイルが信頼できるかどうかを示すためにAPI を追加。
- アニメーションの動作を制御するためにAPI を追加。
- によって提供されるプラグインをインクルードすることで Qt Lottie Animationによって提供されるプラグインを含めることで、VectorImage は Lottie ファイルも表示できるようになりました。この機能は技術プレビューとみなされ、assumeTrustedSource を
true
に設定する必要があります。
Qt Serial Port モジュール
- writeBufferSize プロパティを使って書き込みバッファサイズを制限できるようにした。
Qt Serial Bus モジュール
- QCanBusDeviceInfo に欠落していた move-constructor を追加。
- 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 モジュール
- Chromium 拡張のサポートを追加し、QWebEngineExtensionManager とQWebEngineExtensionInfo
- プラットフォーム証明書ストアに追加することなく、信頼できるCA証明書をウェブサイトプロファイルに追加できるようにした:setAdditionalTrustedCertificates
- を使用して有効化されたBack/Forwardキャッシュのサポートを追加QWebEngineSettings::BackForwardCacheEnabled
Qt WebView モジュール
- Windowsプラットフォーム用のWebView2プラグインを追加。新しいバックエンドは、WebView2と呼ばれるChromiumベースのEdgeブラウザのネイティブCOM APIを使用します。そのため、QtWebEngine を出荷せずにウェブコンテンツを提供できるようになりました。
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 宣言に "view source" リンクを自動的に追加できるようになりました。この機能を有効にするには、新しいurl.sourcesファミリーの設定変数 (
url.sources.enabled
,url.sources.rootdir
,url.sources.linktext
) を使用します。 - QDocはFloydの循環探索アルゴリズムを使ってQML型の循環継承を検出し、無限ループに陥る代わりに問題を報告するようになりました。
.qml
ファイルで定義された QML プロパティ・グループは、\qmlproperty
コマンドでドキュメント化する際に認識され、1 つのグループ化されたプロパティとして表示されます。- Qt ツール(
moc_
、uic_
、qrc_
など)によって生成されたソースファイルが自動的にスキップされるようになり、大規模プロジェクトでの QDoc のビルド時間が短縮されました。 .qml
ファイル内の QML プロパティに表示されるデータタイプは、\qmlproperty
コマンドで直接オーバーライドできるようになりました。- documentationinheadersオプションはテクニカルプレビューとして提供されなくなりました。これは Qt 6.9 で初めて導入されました。
- DocBook 出力を生成するとき、QDoc はオーバーロードのノートを含むようになりました。
- オーバーロードされたシグナルとスロットに、その使用を示すコンテキスト・スニペットが含まれるようになりました。
- QDoc は LLVM 21 から Clang ライブラリに対してリンクできるようになりました。
- .index-filesにthe declared return type from \fn-commands が含まれるようになりました。これは、作者が関数の戻り値の型を
auto
で上書きする場合に、マルチ・プロジェク ト・ビルドで便利です。 - QDocは新しいセクションを作成します。QDoc は、生成されるドキュメントに新しいセクション「QML Enumerations」を作成します。
- コード・スニペットのインデントが正規化され、余分な左マージンの空白が取り除かれま した。これは、大きくインデントされたソースからのスニペット(例えば、
if
-statements の深いネストされたシリーズ)は、ネストされていないかのように表示されることを意味します。 - QDoc はデフォルトのパラメーターを持つテンプレートのエイリアスを正しく解析するようになりました。
- QDoc は、非推奨の代替関数がある場合、非推奨関数への自動リンクを行わないようになりました。
- 新しいnotranslate-commandを使用して、文字列の機械翻訳を防ぐことができます。
プラットフォームの変更
ビルドシステムの変更
- プライベート 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 プラグインを選択するための引数を
qt_generate_deploy_app_script
に追加しました。 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()
に、ターゲットのリソースシステムからオリジナルの QML と JS ファイルの内容を削除するDISCARD_QML_CONTENTS
オプションを追加しました。
デスクトップ・プラットフォーム
Windows
macOS
- 拡張ダイナミック・レンジ(EDR)を選択した Windows で、画面の明るさが変化したときに公開イベントがトリガーされるようになりました。
- titleUIElement アクセシビリティ プロパティがサポートされました。
- サービスメニューの統合がリッチテキストに対応
- QOperatingSystemVersion::MacOSTahoe macOS 26 を表します。
- WhatsThisCursor と BusyCursor のマッピングが追加されました。
- QImage::toCGImage() が画像の色空間を伝播するようになりました
LinuxのWaylandクライアント
モバイルプラットフォーム
アンドロイド
Android 用 Qt
- Gradleをバージョン8.14.2に、Android Gradle Plugin AGPをバージョン8.10.1に更新。
- Android 12 Splash Screen のサポートを追加しました。
- Android 16KB ページサイズのサポートを追加。
- コードジェネレータ (QtJenny) が生成する C++ ラッパー経由で Android API にアクセスするサンプル (QtJennyDemo) を追加。
Qt Quick Android 用
- QtQuickView のシグナルに複数引数のサポートを追加した。
- QML が完全にロードされる前にシグナルリスナーを登録するサポートを追加しました。
- JavaのAPIをjavadoc形式で公開。
iOS
- Apple Pencil のQPointingDevice サポートを追加しました。
- 標準の Apple Pencil の回転を修正
- Apple Pencil 第2世代以降のホバー機能のサポートを追加
- 拡張ダイナミックレンジ (EDR) を選択した Windows で、画面の明るさが変化したときに公開イベントをトリガーするようになりました。
- アプリがアクティブな状態から移動すると、更新要求が一時停止するよう修正
- QScreen 画面の向きの反転も報告するようになりました。
- RLIMIT_STACK が有効なスタックサイズを反映するようになりました。
- QImage::toCGImage() が画像の色空間を伝搬するようになりました。
組み込みプラットフォーム
Boot to Qt
リアルタイムOS
- リアルタイム・オペレーティング・システムのサポートは LTS リリースでのみ提供されます。LTS 以外のリリースについては、プロフェッショナルサービスを通じてのみサポートが提供されます。
Qt 6.10 で非推奨のモジュール
以下のモジュールは非推奨です。新しいコードで使用しないことを強くお勧めします。
Qt Charts と Qt DataVisualization モジュールは非推奨です。これらは引き続きライセンスされたソフトウェアの一部であり、Qt プロジェクトの一部です。しかし、新しいコードには Qt Graphs.また、{Qt Graphs Qt Charts からの移行 }{Qt Charts からの移行 }{ Qt Data Visualization からの移行} のドキュメントも参照してください。
Qt におけるモジュールのライフサイクルについては、QUIP-14 を参照してください。
API 変更点のリスト
これらのページでは、Qt 6.10 における API の変更点の概要を説明します:
既知の問題
Qt 6.10 の既知の問題についてはQt Wiki を参照してください。
© 2025 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.