Auf dieser Seite

QBackingStore Class

Die Klasse „QBackingStore“ stellt einen Zeichenbereich für „ QWindow “ bereit. Mehr...

Header: #include <QBackingStore>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

Öffentliche Funktionen

QBackingStore(QWindow *window)
~QBackingStore()
void beginPaint(const QRegion &region)
void endPaint()
void flush(const QRegion &region, QWindow *window = nullptr, const QPoint &offset = QPoint())
QPlatformBackingStore *handle() const
bool hasStaticContents() const
QPaintDevice *paintDevice()
void resize(const QSize &size)
bool scroll(const QRegion &area, int dx, int dy)
void setStaticContents(const QRegion &region)
QSize size() const
QRegion staticContents() const
QWindow *window() const

Ausführliche Beschreibung

QBackingStore ermöglicht die Verwendung von „ QPainter “, um auf eine „ QWindow “ vom Typ „RasterSurface“ zu zeichnen. Eine weitere Möglichkeit, auf eine „ QWindow “ zu zeichnen, ist die Verwendung von OpenGL mit „ QOpenGLContext “.

Ein QBackingStore enthält eine gepufferte Darstellung des Fensterinhalts und unterstützt somit partielle Aktualisierungen, indem mithilfe von „ QPainter “ nur ein Teilbereich des Fensterinhalts aktualisiert wird.

QBackingStore kann von einer Anwendung verwendet werden, die „ QPainter “ ohne OpenGL-Beschleunigung und ohne den zusätzlichen Overhead der UI-Stacks „ QWidget “ oder „ QGraphicsView “ nutzen möchte. Ein Beispiel für die Verwendung von QBackingStore finden Sie im Beispiel „Raster Window“.

Dokumentation der Member-Funktionen

[explicit] QBackingStore::QBackingStore(QWindow *window)

Erstellt eine leere Oberfläche für den angegebenen Top-Level- window.

[noexcept] QBackingStore::~QBackingStore()

Zerstört diese Oberfläche.

void QBackingStore::beginPaint(const QRegion &region)

Beginnt mit dem Zeichnen auf der Hintergrund-Store-Oberfläche im angegebenen ` region`.

Sie sollten diese Funktion aufrufen, bevor Sie die Funktion ` paintDevice()` zum Zeichnen verwenden.

Siehe auch ` endPaint()` und ` paintDevice()`.

void QBackingStore::endPaint()

Beendet das Zeichnen.

Sie sollten diese Funktion aufrufen, nachdem das Zeichnen mit der Funktion „ paintDevice()“ beendet ist.

Siehe auch „ beginPaint()“ und „ paintDevice()“.

void QBackingStore::flush(const QRegion &region, QWindow *window = nullptr, const QPoint &offset = QPoint())

Zeigt den angegebenen „ region “ aus dem angegebenen „ window “ auf dem Bildschirm an.

Das „ window “ muss entweder das oberste Fenster sein, das durch diesen „backingstore“ dargestellt wird, oder ein nicht-transientes untergeordnetes Fenster dieses Fensters. Wird „ nullptr “ übergeben, wird standardmäßig das oberste Fenster des „backingstore“ verwendet.

Ist das ` window ` ein untergeordnetes Fenster, sollte die ` region ` in den Koordinaten des untergeordneten Fensters angegeben werden, und die ` offset ` sollte den Versatz des untergeordneten Fensters relativ zum obersten Fenster des Backingstores darstellen.

Sie sollten diese Funktion aufrufen, nachdem Sie das Zeichnen mit ` endPaint()` beendet haben.

QPlatformBackingStore *QBackingStore::handle() const

Gibt einen Zeiger auf die QPlatformBackingStore-Implementierung zurück

bool QBackingStore::hasStaticContents() const

Gibt einen booleschen Wert zurück, der angibt, ob dieses Fenster statische Inhalte enthält oder nicht.

QPaintDevice *QBackingStore::paintDevice()

Gibt das Zeichen-Device für diese Oberfläche zurück.

Warnung: Das Gerät ist nur zwischen den Aufrufen von ` beginPaint()` und ` endPaint()` gültig. Sie sollten den zurückgegebenen Wert nicht zwischenspeichern.

void QBackingStore::resize(const QSize &size)

Legt die Größe der Fensterfläche auf „ size “ fest.

Siehe auch size().

bool QBackingStore::scroll(const QRegion &area, int dx, int dy)

Scrollt den angegebenen Bereich „ area “ um „ dx “ Pixel nach rechts und „ dy “ nach unten; sowohl „ dx “ als auch „ dy “ können negative Werte annehmen.

Gibt true zurück, wenn der Bereich erfolgreich gescrollt wurde; andernfalls false.

void QBackingStore::setStaticContents(const QRegion &region)

Legen Sie region als statischen Inhalt dieses Fensters fest.

Siehe auch staticContents().

QSize QBackingStore::size() const

Gibt die aktuelle Größe der Fensterfläche zurück.

QRegion QBackingStore::staticContents() const

Gibt ein ` QRegion ` zurück, das den Bereich des Fensters darstellt, der statische Inhalte enthält.

Siehe auch ` setStaticContents()`.

QWindow *QBackingStore::window() const

Gibt einen Zeiger auf das oberste Fenster zurück, das dieser Oberfläche zugeordnet ist.

© 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.