QQuickImageResponse Class

QQuickImageResponse クラスは、QQuickAsyncImageProvider で画像を非同期に読み込むためのインターフェイスを提供します。詳細...

Header: #include <QQuickImageResponse>
CMake: find_package(Qt6 REQUIRED COMPONENTS Quick)
target_link_libraries(mytarget PRIVATE Qt6::Quick)
qmake: QT += quick
Inherits: QObject

パブリック関数

QQuickImageResponse()
virtual ~QQuickImageResponse() override
virtual QString errorString() const
virtual QQuickTextureFactory *textureFactory() const = 0

パブリックスロット

virtual void cancel()

シグナル

void finished()

詳細説明

画像レスポンスの目的は、画像プロバイダのジョブを非同期で実行する方法を提供することです。

レスポンスは、finished() シグナルが発せられると、deleteLater を介して削除されます。QQuickImageResponse のベースとしてQRunnable を使用している場合は、自動削除が無効になっていることを確認してください。

完全な実装については、画像レスポンスプロバイダの例を参照してください。

QQuickImageProviderも参照してください

メンバ関数の説明

QQuickImageResponse::QQuickImageResponse()

画像応答を構築します

[override virtual noexcept] QQuickImageResponse::~QQuickImageResponse()

画像応答を破棄します

[virtual slot] void QQuickImageResponse::cancel()

このメソッドは、レスポンスがエンジンから不要になったことを伝えるために使われます。

プロバイダ側でリクエストをキャンセルするために再実装することもできますが、必須ではありません。

キャンセルされたQQuickImageResponse は、エンジンがQQuickImageResponse をクリーンアップできるように、finished() を発行する必要があります。

注: finished ()は、cancel()が呼び出されたかどうかに関係なく、レスポンスが完了するまで発行されるべきではありません。cancel() が呼び出されたかどうかに関係なく、レスポンスが完了するまで () を発行しないでください。これが早期に呼び出された場合、エンジンはまだアクティブな状態でレスポンスを破棄し、クラッシュにつながる可能性があります。

[virtual] QString QQuickImageResponse::errorString() const

ジョブ実行のエラー文字列を返します。空の文字列はエラーがないことを意味します。

[signal] void QQuickImageResponse::finished()

ジョブの実行が終了したことを通知します(正常に終了した場合、エラーが発生した場合、またはキャンセルされた場合)。

注意: このシグナルの発信は、レスポンスが実行する最後のアクションでなければなりません。シグナルを受信すると、レスポンスはその後エンジンによって破棄されます。

[pure virtual] QQuickTextureFactory *QQuickImageResponse::textureFactory() const

ジョブのテクスチャファクトリを返します。プロバイダがQImage で動作する場合は、QQuickTextureFactory::textureFactoryForImage を使用できます。返されたQQuickTextureFactory の所有権はエンジンが持ちます。

注: このメソッドは必要な場合にのみ呼び出されます。た と えば、 エ ラ ーが発生 し た り ジ ョ ブがキャンセル さ れた場合は呼び出されない可能性があ り ます。したがって、QQuickTextureFactory インスタンスはこのメソッドでのみ割り当てるか、確実に削除してください。

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