QBackingStore Class

Die Klasse QBackingStore bietet eine Zeichenfläche für QWindow. Mehr...

Kopfzeile: #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

Detaillierte Beschreibung

QBackingStore ermöglicht die Verwendung von QPainter zum Malen auf einer QWindow mit dem Typ RasterSurface. Die andere Möglichkeit des Renderings auf eine QWindow ist die Verwendung von OpenGL mit QOpenGLContext.

Ein QBackingStore enthält eine gepufferte Darstellung des Fensterinhalts und unterstützt daher partielle Aktualisierungen durch Verwendung von QPainter, um nur einen Teilbereich des Fensterinhalts zu aktualisieren.

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

Dokumentation der Mitgliedsfunktionen

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

Konstruiert eine leere Oberfläche für die angegebene oberste Ebene window.

[noexcept] QBackingStore::~QBackingStore()

Zerstört diese Oberfläche.

void QBackingStore::beginPaint(const QRegion &region)

Beginnt mit dem Malen auf der hinteren Lagerfläche in der angegebenen region.

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

Siehe auch endPaint() und paintDevice().

void QBackingStore::endPaint()

Beendet das Malen.

Sie sollten diese Funktion aufrufen, nachdem das Malen mit der Funktion paintDevice() beendet wurde.

Siehe auch beginPaint() und paintDevice().

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

Spült das angegebene region aus dem angegebenen window auf den Bildschirm.

window muss entweder das Fenster der obersten Ebene sein, das durch diesen Backingstore repräsentiert wird, oder ein nicht-transientes Kind dieses Fensters. Die Übergabe von nullptr führt zur Verwendung des Fensters der obersten Ebene des Backingstore zurück.

Wenn window ein untergeordnetes Fenster ist, sollte region in den Koordinaten des untergeordneten Fensters angegeben werden, und offset sollte der Offset des untergeordneten Fensters in Bezug auf das oberste Fenster des Backingstore sein.

Sie sollten diese Funktion aufrufen, nachdem Sie das Malen 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 einen statischen Inhalt hat oder nicht.

QPaintDevice *QBackingStore::paintDevice()

Gibt das Malgerät 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)

Setzt die Größe der Fensterfläche auf size.

Siehe auch size().

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

Scrollt den angegebenen Bereich area dx Pixel nach rechts und dy nach unten; sowohl dx als auch dy können negativ sein.

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

void QBackingStore::setStaticContents(const QRegion &region)

Legt 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 eine QRegion zurück, die den Bereich des Fensters repräsentiert, der statische Inhalte hat.

Siehe auch setStaticContents().

QWindow *QBackingStore::window() const

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

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