QWindow that is also a QPaintDevice.">

- Qt 6.5
- Qt GUI
- C++ Classes
- QPaintDeviceWindow
- Qt 6.5.1 Reference Documentation

# QPaintDeviceWindow Class

Convenience subclass of QWindow that is also a QPaintDevice. More...

Header: | #include <QPaintDeviceWindow>
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: | QT += gui
Inherits: | QWindow and QPaintDevice
Inherited By: | QOpenGLWindow and QRasterWindow

- List of all members, including inherited members

## Public Functions

void | update(const QRect &rect)
void | update(const QRegion &region)

## Public Slots

void | update()

## Reimplemented Protected Functions

virtual void | paintEvent(QPaintEvent *event) override

## Detailed Description

QPaintDeviceWindow is like a regular QWindow, with the added functionality of being a paint device too. Whenever the content needs to be updated, the virtual paintEvent() function is called. Subclasses, that reimplement this function, can then simply open a QPainter on the window.

Note: This class cannot directly be used in applications. It rather serves as a base for subclasses like QOpenGLWindow.

See also QOpenGLWindow.

## Member Function Documentation

### `[override virtual protected]` void QPaintDeviceWindow::paintEvent(QPaintEvent *event)

Reimplements: QWindow::paintEvent(QPaintEvent *ev).

Handles paint events passed in the event parameter.

The default implementation does nothing. Reimplement this function to perform painting. If necessary, the dirty area is retrievable from the event.

### void QPaintDeviceWindow::update(const QRect &rect)

Marks the rect of the window as dirty and schedules a repaint.

Note: Subsequent calls to this function before the next paint event will get ignored, but rect is added to the region to update.

Note: For non-exposed windows the update is deferred until the window becomes exposed again.

### void QPaintDeviceWindow::update(const QRegion &region)

Marks the region of the window as dirty and schedules a repaint.

Note: Subsequent calls to this function before the next paint event will get ignored, but region is added to the region to update.

Note: For non-exposed windows the update is deferred until the window becomes exposed again.

### `[slot]` void QPaintDeviceWindow::update()

Marks the entire window as dirty and schedules a repaint.

Note: Subsequent calls to this function before the next paint event will get ignored.

Note: For non-exposed windows the update is deferred until the window becomes exposed again.