QML 言語
QML 言語は、動的で宣言型のユーザーインターフェースを構築するための基盤を提供します。このセクションでは、言語の中核となる機能と構文について解説します。
中核となる概念
構文
「QML構文の基礎」では、オブジェクトの宣言、プロパティの代入、階層的なオブジェクト構造など、QMLの基礎について解説します。これらの基礎を理解することは、QMLコードを記述する上で不可欠です。
ドキュメント
「QMLドキュメント」では、QMLコードがファイル内でどのように構成されるか、およびQMLドキュメントの構造について説明します。各ドキュメントでは、再利用可能な型を定義でき、インポート、オブジェクト宣言、プロパティ定義を含めることができます。
プロパティバインディング
プロパティバインディングは、QMLの最も強力な機能の一つであり、依存関係が変化した際にプロパティが自動的に更新されるようにします。バインディングにより、命令型コードを必要とせずに、プロパティ間の動的な関係を作成できます。
シグナルとハンドラのイベントシステム
シグナルとハンドラのイベントシステムは、QMLのイベント処理メカニズムを提供します。オブジェクトは特定のイベントが発生した際にシグナルを発信でき、他のオブジェクトはシグナルハンドラを実装することでこれに応答できるため、コンポーネント間の疎結合が実現されます。
インポートシステム
インポート文
インポート文を使用すると、QMLドキュメントにQMLモジュール、JavaScriptファイル、およびECMAScriptモジュールを組み込むことができます。これらは、ドキュメントのスコープ内で利用可能な型や機能を定義します。
QMLドキュメントディレクトリのインポートを使用すると、モジュールを明示的に定義することなく、ディレクトリ内のすべてのQML型をインポートできます。これは、開発中にプロジェクト内でQMLコンポーネントを共有する際に役立ちます。
「QML での JavaScript リソースのインポート」では、JavaScript の観点から JavaScript ファイルを組み込む方法について説明します。これには、QML ドキュメントや他の JavaScript ファイルへのインポートが含まれます。
高度な言語機能
プロパティのシャドウイングとオーバーライドのセマンティクス
「プロパティのシャドウイングとオーバーライドのセマンティクス」では、派生型が基底型のプロパティを再定義した場合に何が起こるかを説明しています。これらのセマンティクスを理解することは、適切な継承やコンポーネントのカスタマイズを行う上で不可欠です。
スコープと名前解決
「スコープと名前の解決」では、QMLがネストされたオブジェクト階層内で識別子やプロパティをどのように解決するかを説明します。これには、IDのスコープ、コンテキストプロパティ、およびJavaScriptのスコープチェーンの理解が含まれます。
リソースの読み込みとネットワーク透過性
「リソースの読み込みとネットワークの透過性」では、QMLが同じ構文を使用してローカルファイルやネットワークURLからリソースを読み込む方法を示します。これにより、リモートコンテンツのシームレスな統合が可能になり、アセット管理が簡素化されます。
「QMLリファレンス」および「QMLの型システム」も参照してください 。
© 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.