Qt Qml

Qt Qml モジュールは、QML言語によるアプリケーションやライブラリを開発するためのフ レームワークを提供します。言語とエンジンのインフラストラクチャを定義・実装し、アプリケーション開発者がカスタムのQMLタイプやモジュールを登録したり、QMLコードをJavaScriptやC++と統合したりするためのAPIを提供します。Qt Qml モジュールはQML APIC++ API の両方を提供します。

モジュールの使い方

QML API

モジュールのQML型はQtQml のインポートから利用できます。この型を使用するには、.qml ファイルに以下の import 文を追加してください:

import QtQml

Qt Qml モジュールにはQMLフレームワークとアプリケーションで使用される重要な QML型が含まれています。QMLの構成要素については、QMLリファレンスで説明されています。

Qt Qml モジュールのQML API では、多くのQML オブジェクト型QML 値型、名前空間が提供されています。

C++ API

Qt モジュールの C++ API を使用するには、モジュールライブラリを直接リンクするか、他の依存関係を通 してリンクする必要があります。CMakeqmake などのビルドツールには、このための専用サポートが用意されています。

C++ APIには、使い慣れるべき重要なクラスがいくつか含まれています。また、JavaScriptの値を保持するための型も提供されています。

CMakeでビルドする

find_package() コマンドを使って、Qt6 パッケージの中から必要なモジュール・コンポーネントを探します:

find_package(Qt6 REQUIRED COMPONENTS Qml)
target_link_libraries(mytarget PRIVATE Qt6::Qml)

詳しくはCMake によるビルドの概要を参照してください。

QMLでないライブラリに外国のQML型をサポートするには、QmlIntegration

find_package(Qt6 REQUIRED COMPONENTS QmlIntegration)
target_link_libraries(mytarget PRIVATE Qt6::QmlIntegration)

詳細はqt6_generate_foreign_qml_typesを参照してください。

qmake でのビルド

モジュールをqmakeでビルドするように設定するには、プロジェクトの.proファイルにQT 変数の値としてモジュールを追加します:

QT += qml

QML型とQMLモジュールの登録

QMLで使用する型を登録するためには、まずCMakeのqt_add_qml_moduleを使って QMLモジュールを定義する必要があります。そして、新しいモジュールにC++ヘッダを追加し、その中でQMLに公開する型を定義します。

エンジンの調整

QMLエンジンの振る舞いをカスタマイズするためのツマミはいくつもあります。JavaScriptエンジンの設定のページには、そのために使用できる環境変数が列挙されています。QML Disk Cacheの説明では、QMLコンポーネントのコンパイルとロード方法に関するオプションについて説明しています。

記事とガイド

これらの記事には、Qt Qml に関する情報が含まれています。

リファレンス

ライセンスと帰属

Qt QmlQt Companyの商用ライセンスで入手可能です。また、フリーソフトウェアライセンスでも提供されています。Qt 5.4 以降、これらのフリーソフトウェアライセンスはGNU Lesser General Public License, version 3 またはGNU General Public License, version 2 です。詳細はQt ライセンスを参照してください。

さらに、Qt 6.8.2のQt Qml 、以下の寛容なライセンスの下でサードパーティモジュールを含むことができます:

JavaScriptCore Macro Assembler

BSD 2条項「簡易」ライセンス

© 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.