QML用語集

一般的な用語

用語定義
QMLQML アプリケーションを記述するための言語。言語アーキテクチャとエンジンは Qt QML モジュールによって実装されています。
Qt QuickQt Quick モジュールによって提供される QML 言語の型と機能の標準ライブラリです。"importQtQuick" でアクセスできます。
QMLでは、型は 値型またはQMLオブジェクト型のいずれかを指します。

QML言語には多くの組み込み型が用意されており、Qt QuickモジュールではQMLアプリケーションを構築するための様々なQt Quick types 。また、サードパーティの開発者が(モジュールを通じて)提供する型や、 アプリケーション開発者がQMLドキュメントを通じて提供する型もあります。

詳しくは「QML型システム」を参照してください。

値型値型とはintstringbool のような単純な型です。オブジェクト型とは異なり、値型からオブジェクトをインスタンス化することはでき ません。例えば、プロパティやメソッド、シグナルなどを持つint オブジェクトを作成することはできません。

オブジェクト型と同様に値型も通常QMLモジュールに属します。これらを使用するためにはモジュールをインポートする必要があります。例えば、int、bool、double、string、QtObject 、 Componentなどです。

詳しくはQMLの型システムを参照してください。

オブジェクト型QMLオブジェクト型とは、QMLエンジンがインスタンス化できる型のことです。

QMLの型は大文字で始まる.qmlファイルのドキュメントか、QObject-based C++クラスで定義することができます。

詳しくは「QML型システム」を参照してください。

オブジェクトQMLオブジェクトはQMLオブジェクト型のインスタンスです。

このようなオブジェクトは、作成されるオブジェクトや各オブジェクトに定義される属性を指定するオブジェクト宣言をエンジンが処理する際に作成されます。

さらに、Component.createObject()やQt.createQmlObject()によって、実行時に動的にオブジェクトを生成することもできます。

遅延インスタンス化も参照してください。

コンポーネントコンポーネントは、QMLオブジェクトやオブジェクトツリーを生成するためのテンプレートです。QMLエンジンが文書を読み込む際に生成されます。一度読み込まれると、それを使ってオブジェクトやオブジェクトツリーをインスタンス化することができます。

さらに、Component 型は特別な型であり、文書内でインラインにコンポーネントを宣言するために使用することができます。コンポーネントオブジェクトは、Qt.createComponent() によって動的に生成することもできます。

ドキュメントQMLドキュメントは、1つ以上のimport文から始まり、トップレベルのオブジェクト宣言を1つ含む、自己完結したQMLソースコードです。ドキュメントは.qmlファイルやテキスト文字列の中に記述することができます。

大文字で始まる .qml ファイルに格納されている場合、そのファイルは QML 型の定義として認識されます。最上位のオブジェクト宣言は、その型によってインスタンス化されるオブジェクトツリーをカプセル化します。

プロパティプロパティとは、オブジェクト型の属性の1つで、名前と値を持ちます。

オブジェクトは1つ以上のプロパティを持つことができます。プロパティには、キャンバスに関連するもの(x、y、width、height、opacity など)もあれば、その型に固有のデータ(Text 型の "text" プロパティなど)もあります。

詳しくはQMLオブジェクト属性を参照してください。

バインディングバインディングとは、プロパティに "バインド "されるJavaScriptの式のことです。ある時点におけるプロパティの値は、その式を評価して返される値になります。

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

シグナルシグナルはQMLオブジェクトからの通知です。オブジェクトがシグナルを発すると、他のオブジェクトはシグナルハンドラを通してそのシグナルを受信し、処理することができます。

QMLオブジェクトのほとんどのプロパティには変更シグナルがあり、それに関連した変更シグナルハンドラもあります。例えば、MouseArea 型のインスタンスの "onClicked() "ハンドラは、アプリケーションでサウンドを再生するために定義されるかもしれません。

詳しくはシグナルとハンドラのイベントシステムを参照してください。

シグナルハンドラシグナルハンドラは、シグナルによってトリガーされる式(または関数)です。C++では「スロット」とも呼ばれます。

詳細については、「シグナルとハンドラ イベント システム」を参照してください。

遅延インスタンス化オブジェクトのインスタンスは、実行時に "遅延的に "インスタンス化することができます。Qt Quick は、Loader 型を提供し、遅延インスタンス化をより便利にします。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。