The QQuickImageResponse class provides an interface for asynchronous image loading in QQuickAsyncImageProvider . 更多...
头: | #include <QQuickImageResponse> |
CMake: |
find_package(Qt6 COMPONENTS Quick REQUIRED)
target_link_libraries(mytarget PRIVATE Qt6::Quick) |
qmake: | QT += quick |
Since: | Qt 5.6 |
继承: | QObject |
QQuickImageResponse () | |
virtual | ~QQuickImageResponse () override |
virtual QString | errorString () const |
virtual QQuickTextureFactory * | textureFactory () const = 0 |
virtual void | cancel () |
void | finished () |
The purpose of an image response is to provide a way for image provider jobs to be executed in an asynchronous way.
Responses are deleted via deleteLater once the finished () signal has been emitted. If you are using QRunnable as base for your QQuickImageResponse ensure automatic deletion is disabled.
见 Image Response Provider Example for a complete implementation.
另请参阅 QQuickImageProvider .
Constructs the image response
[virtual slot]
void
QQuickImageResponse::
cancel
()
This method is used to communicate that the response is no longer required by the engine.
It may be reimplemented to cancel a request in the provider side, however, it is not mandatory.
A cancelled QQuickImageResponse still needs to emit finished () so that the engine may clean up the QQuickImageResponse .
注意: finished () should not be emitted until the response is complete, regardless of whether or not cancel() was called. If it is called prematurely, the engine may destroy the response while it is still active, leading to a crash.
[signal]
void
QQuickImageResponse::
finished
()
Signals that the job execution has finished (be it successfully, because an error happened or because it was cancelled).
注意: Emission of this signal must be the final action the response performs: once the signal is received, the response will subsequently be destroyed by the engine.
[override virtual]
QQuickImageResponse::
~QQuickImageResponse
()
Destructs the image response
[虚拟]
QString
QQuickImageResponse::
errorString
() const
Returns the error string for the job execution. An empty string means no error.
[pure virtual]
QQuickTextureFactory
*QQuickImageResponse::
textureFactory
() const
Returns the texture factory for the job. You can use QQuickTextureFactory::textureFactoryForImage if your provider works with QImage . The engine takes ownership of the returned QQuickTextureFactory .
注意: This method will be called only when needed. For example, it may not be called if there is an error or the job is cancelled. Therefore, allocate the QQuickTextureFactory instance only in this method or otherwise ensure its deletion.