WebChannel QML Type
QWebChannel への QML インターフェース。詳細...
Import Statement: | import QtWebChannel 1.8 |
プロパティ
- blockUpdates : bool
- propertyUpdateInterval : int
- registeredObjects : list<QtObject>
- transports : list<QtObject>
付属物件
- id : string
方法
- void connectTo(QtObject transport)
- void deregisterObject(QtObject object)
- void disconnectFrom(QtObject transport)
- void registerObject(const string id, QtObject object)
- void registerObjects(object objects)
詳しい説明
WebChannel は HTML クライアントからQObject や QML オブジェクトに透過的にアクセスするための仕組みを提供します。すべてのプロパティ、シグナル、パブリックスロットは HTML クライアントから利用することができます。
QWebChannel およびJavaScript APIも参照してください 。
プロパティの説明
blockUpdates : bool |
true
に設定すると、更新はブロックされ、リモートクライアントにはプロパティの変更が通知されません。
このプロパティをfalse
に設定することで、更新が再びブロックされなくなると、変更は記録され、クライアントに送信されます。 デフォルトでは、更新はブロックされません。
propertyUpdateInterval : int |
プロパティ更新間隔。
この間隔を正の値に設定することで、ミリ秒単位の異なる間隔に変更することができます。プロパティの更新はバッチ処理され、間隔が切れた後に送信されます。ゼロに設定すると、1回のイベントループ実行内で発生した更新は、バッチ処理され、次の実行時に送信される。負の値の場合、更新は即座に送信される。デフォルト値は50ミリ秒。
リモートクライアントからアクセス可能なオブジェクトのリスト。
オブジェクトは、attachedid プロパティに識別子を設定する必要があります。
登録されると、すべてのシグナルとプロパティの変更が自動的にクライアントに伝わります。スロットを含む呼び出し可能なパブリック・メソッドもクライアントにアクセス可能です。
コンポーネントの作成時に利用できないオブジェクトを登録する必要がある場合は、命令型のregisterObjects メソッドを使用します。
registerObjects() およびidも参照のこと 。
QWebChannelAbstractTransport を実装するトランスポートオブジェクトのリスト。トランスポートはリモートクライアントと通信するために使用されます。
connectTo() およびdisconnectFrom()も参照して ください。
付属プロパティ ドキュメント
WebChannel.id : string |
WebChannel に登録されたオブジェクトがリモートクライアントから認識される識別子。
このプロパティは、WebChannel で公開されるすべてのオブジェクトに設定する必要があります。id の形式には制限はありませんが、通常は有効な JavaScript 識別子でもある文字列を選択することをお勧めします。
メソッドのドキュメント
void connectTo(QtObject transport) |
単一のクライアントとの通信チャネルを表すtransport に接続します。
トランスポートオブジェクトはQWebChannelAbstractTransport の実装でなければなりません。
transports およびdisconnectFrom()も参照してください 。
void deregisterObject(QtObject object) |
指定されたobject を WebChannel から登録解除します。
リモートクライアントは、指定されたオブジェクトのdestroyed
シグナルを受け取ります。
registerObjects()、registerObject() およびregisteredObjects も参照して ください。
void disconnectFrom(QtObject transport) |
transport をこの WebChannel から切断します。
クライアントは WebChannel と通信できなくなり、シグナルやプロパティの更新を受信できなくなります。
connectTo()も参照してください 。
WebChannel に単一のオブジェクトを登録します。
object のプロパティ、シグナル、パブリックメソッドがリモートクライアントに公開されます。そこで、id という識別子を持つオブジェクトが構築されます。
BINDABLE
でありながらNOTIFY
シグナルを持たないプロパティは、クライアント側でプロパティの更新が行われますが、変更通知のコールバックを登録する仕組みはありません。
注意: 現在の制限事項として、オブジェクトはクライアントが初期化される前に登録されなければなりません。
registerObjects()、deregisterObject()、registeredObjectsも参照してください 。
void registerObjects(object objects) |
指定されたobjects を登録し、HTMLクライアントからアクセスできるようにする。objects はJavaScript Mapオブジェクトでなければならない。マップのキーは、クライアント側でオブジェクトの識別子として使用されます。
登録されると、すべてのシグナルとプロパティの変更が自動的にクライアントに伝わります。スロットを含む呼び出し可能なパブリック・メソッドにもクライアントがアクセスできる。
この命令型APIを使えば、その場でオブジェクトを登録することができる。静的オブジェクトの場合は、宣言的なregisteredObjects プロパティを使用することをお勧めします。
registeredObjectsも参照の こと。
© 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.