Auf dieser Seite

QWindow Class

Die Klasse „QWindow“ repräsentiert ein Fenster im zugrunde liegenden Fenstersystem. Mehr...

Header: #include <QWindow>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
Erbt von:QObject und QSurface
Vererbt an:

QPaintDeviceWindow, „ QQuickWindow “ sowie QVulkanWindow

Öffentliche Typen

enum AncestorMode { ExcludeTransients, IncludeTransients }
enum Visibility { Windowed, Minimized, Maximized, FullScreen, AutomaticVisibility, Hidden }

Eigenschaften

Öffentliche Funktionen

QWindow(QScreen *targetScreen = nullptr)
QWindow(QWindow *parent)
virtual ~QWindow()
QSize baseSize() const
Qt::ScreenOrientation contentOrientation() const
void create()
QCursor cursor() const
void destroy()
qreal devicePixelRatio() const
QString filePath() const
Qt::WindowFlags flags() const
virtual QObject *focusObject() const
QRect frameGeometry() const
QMargins frameMargins() const
QPoint framePosition() const
QRect geometry() const
int height() const
QIcon icon() const
bool isActive() const
bool isAncestorOf(const QWindow *child, QWindow::AncestorMode mode = IncludeTransients) const
bool isExposed() const
bool isModal() const
bool isTopLevel() const
bool isVisible() const
(since 6.0) QPointF mapFromGlobal(const QPointF &pos) const
QPoint mapFromGlobal(const QPoint &pos) const
(since 6.0) QPointF mapToGlobal(const QPointF &pos) const
QPoint mapToGlobal(const QPoint &pos) const
QRegion mask() const
int maximumHeight() const
QSize maximumSize() const
int maximumWidth() const
int minimumHeight() const
QSize minimumSize() const
int minimumWidth() const
Qt::WindowModality modality() const
qreal opacity() const
QWindow *parent(QWindow::AncestorMode mode = ExcludeTransients) const
QPoint position() const
void reportContentOrientationChange(Qt::ScreenOrientation orientation)
QSurfaceFormat requestedFormat() const
void resize(const QSize &newSize)
void resize(int w, int h)
(since 6.9) QMargins safeAreaMargins() const
QScreen *screen() const
void setBaseSize(const QSize &size)
void setCursor(const QCursor &cursor)
void setFilePath(const QString &filePath)
void setFlag(Qt::WindowType flag, bool on = true)
void setFlags(Qt::WindowFlags flags)
void setFormat(const QSurfaceFormat &format)
void setFramePosition(const QPoint &point)
(since 6.12) void setFramePosition(int x, int y)
void setIcon(const QIcon &icon)
bool setKeyboardGrabEnabled(bool grab)
void setMask(const QRegion &region)
void setMaximumSize(const QSize &size)
void setMinimumSize(const QSize &size)
void setModality(Qt::WindowModality modality)
bool setMouseGrabEnabled(bool grab)
void setOpacity(qreal level)
void setParent(QWindow *parent)
void setPosition(const QPoint &pt)
void setPosition(int posx, int posy)
void setScreen(QScreen *newScreen)
void setSizeIncrement(const QSize &size)
void setSurfaceType(QSurface::SurfaceType surfaceType)
void setTransientParent(QWindow *parent)
void setVisibility(QWindow::Visibility v)
void setVulkanInstance(QVulkanInstance *instance)
void setWindowState(Qt::WindowState state)
void setWindowStates(Qt::WindowStates state)
QSize sizeIncrement() const
QString title() const
QWindow *transientParent() const
Qt::WindowType type() const
void unsetCursor()
QWindow::Visibility visibility() const
QVulkanInstance *vulkanInstance() const
int width() const
WId winId() const
Qt::WindowState windowState() const
Qt::WindowStates windowStates() const
int x() const
int y() const

Neu implementierte öffentliche Funktionen

virtual QSurfaceFormat format() const override
virtual QSize size() const override
virtual QSurface::SurfaceType surfaceType() const override

Öffentliche Slots

void alert(int msec)
bool close()
void hide()
void lower()
void raise()
void requestActivate()
void requestUpdate()
void setGeometry(const QRect &rect)
void setGeometry(int posx, int posy, int w, int h)
void setHeight(int arg)
void setMaximumHeight(int h)
void setMaximumWidth(int w)
void setMinimumHeight(int h)
void setMinimumWidth(int w)
void setTitle(const QString &)
void setVisible(bool visible)
void setWidth(int arg)
void setX(int arg)
void setY(int arg)
void show()
void showFullScreen()
void showMaximized()
void showMinimized()
void showNormal()
bool startSystemMove()
bool startSystemResize(Qt::Edges edges)

Signale

void activeChanged()
void contentOrientationChanged(Qt::ScreenOrientation orientation)
void flagsChanged(Qt::WindowFlags flags)
void focusObjectChanged(QObject *object)
void heightChanged(int arg)
void maximumHeightChanged(int arg)
void maximumWidthChanged(int arg)
void minimumHeightChanged(int arg)
void minimumWidthChanged(int arg)
void modalityChanged(Qt::WindowModality modality)
void opacityChanged(qreal opacity)
(since 6.9) void safeAreaMarginsChanged(QMargins margins)
void screenChanged(QScreen *screen)
void transientParentChanged(QWindow *transientParent)
void visibilityChanged(QWindow::Visibility visibility)
void visibleChanged(bool arg)
void widthChanged(int arg)
void windowStateChanged(Qt::WindowState windowState)
void windowTitleChanged(const QString &title)
void xChanged(int arg)
void yChanged(int arg)

Statische öffentliche Mitglieder

QWindow *fromWinId(WId id)

Geschützte Funktionen

virtual void closeEvent(QCloseEvent*ev)
virtuell void exposeEvent(QExposeEvent*ev)
virtuell void focusInEvent(QFocusEvent*ev)
virtuell void focusOutEvent(QFocusEvent*ev)
virtuell void hideEvent(QHideEvent*ev)
virtuell void keyPressEvent(QKeyEvent*ev)
virtuell void keyReleaseEvent(QKeyEvent*ev)
virtuell void mouseDoubleClickEvent(QMouseEvent*ev)
virtuell void mouseMoveEvent(QMouseEvent*ev)
virtuell void mousePressEvent(QMouseEvent*ev)
virtuell void mouseReleaseEvent(QMouseEvent*ev)
virtuell void moveEvent(QMoveEvent*ev)
virtuell bool nativeEvent(const QByteArray&eventType, void*message, qintptr*result)
(since 6.0) virtuell void paintEvent(QPaintEvent*ev)
virtuell void resizeEvent(QResizeEvent*ev)
virtuell void showEvent(QShowEvent*ev)
virtuell void tabletEvent(QTabletEvent*ev)
virtuell void touchEvent(QTouchEvent*ev)
virtuell void wheelEvent(QWheelEvent*ev)

Neu implementierte geschützte Funktionen

virtual bool event(QEvent *ev) override

Ausführliche Beschreibung

Ein Fenster, dem ein übergeordnetes Fenster zugewiesen wird, wird zu einem nativen untergeordneten Fenster dieses übergeordneten Fensters.

Eine Anwendung verwendet für ihre Benutzeroberfläche in der Regel „ QWidget “ oder „ QQuickView “ und nicht direkt „QWindow“. Dennoch ist es möglich, mit „ QBackingStore “ oder „ QOpenGLContext “ direkt in ein „QWindow“ zu rendern, wenn man die Abhängigkeiten auf ein Minimum beschränken oder OpenGL direkt nutzen möchte. Das Raster-Fenster-Beispiel und das OpenGL-Fenster-Beispiel sind nützliche Referenzbeispiele dafür, wie man mit beiden Ansätzen in ein „QWindow“ rendert.

Ressourcenverwaltung

Fenster können potenziell viel Speicher beanspruchen. Eine übliche Berechnung ergibt sich aus Breite mal Höhe mal Farbtiefe. Ein Fenster kann zudem mehrere Puffer enthalten, um Doppel- und Dreifach-Buffering sowie Tiefen- und Stencil-Puffer zu unterstützen. Um die Speicherressourcen eines Fensters freizugeben, rufen Sie die Funktion ` destroy()` auf.

Ausrichtung des Inhalts

QWindow verfügt über die Funktion ` reportContentOrientationChange()`, mit der das Layout des Fensterinhalts in Bezug auf den Bildschirm festgelegt werden kann. Die Inhaltsausrichtung ist lediglich ein Hinweis für das Fenstersystem, in welcher Ausrichtung sich der Fensterinhalt befindet. Dies ist nützlich, wenn Sie die Fenstergröße beibehalten, aber stattdessen den Inhalt drehen möchten, insbesondere bei Drehanimationen zwischen verschiedenen Ausrichtungen. Das Fenstersystem verwendet diesen Wert möglicherweise, um das Layout von System-Popups oder Dialogen zu bestimmen.

Sichtbarkeit und Darstellung im Fenstersystem

Standardmäßig ist das Fenster nicht sichtbar, und Sie müssen ` setVisible(true)` oder ` show()` oder Ähnliches aufrufen, um es sichtbar zu machen. Um ein Fenster wieder auszublenden, rufen Sie ` setVisible(false)` oder ` hide()` auf. Die Eigenschaft „visible“ beschreibt den Zustand, in dem sich das Fenster nach Wunsch der Anwendung befinden soll. Je nach zugrunde liegendem System wird ein sichtbares Fenster möglicherweise dennoch nicht auf dem Bildschirm angezeigt. Es könnte beispielsweise von anderen undurchsichtigen Fenstern verdeckt oder außerhalb des physischen Bildschirmbereichs verschoben worden sein. Bei Fenstersystemen mit Exposition-Benachrichtigungen beschreibt der Zugriffsoperator ` isExposed()` (), ob das Fenster als direkt auf dem Bildschirm sichtbar behandelt werden soll. Die Funktion „ exposeEvent()“ wird immer dann aufgerufen, wenn ein Bereich des Fensters ungültig wird, beispielsweise aufgrund einer Änderung der Sichtbarkeit im Fenstersystem. Auf Fenstersystemen, die diese Information der Anwendung nicht zur Verfügung stellen, gibt „ isExposed()“ einfach denselben Wert zurück wie „ isVisible()“.

QWindow::Visibility Die über ` visibility()` abgefragte Information ist eine Komfort-API, die die Funktionen von `visible()` und ` windowStates()` kombiniert.

Darstellung

Es gibt zwei Qt-APIs, die zum Rendern von Inhalten in ein Fenster verwendet werden können: „ QBackingStore “ zum Rendern mit einem „ QPainter “ und zum Flushen der Inhalte in ein Fenster vom Typ „ QSurface::RasterSurface “, sowie „ QOpenGLContext “ zum Rendern mit OpenGL in ein Fenster vom Typ „ QSurface::OpenGLSurface “.

Die Anwendung kann mit der Darstellung beginnen, sobald „ isExposed()“ „ true “ zurückgibt, und kann die Darstellung fortsetzen, bis „ isExposed()“ „ false “ zurückgibt. Um festzustellen, wann sich „ isExposed()“ ändert, implementieren Sie „ exposeEvent()“ neu. Das Fenster erhält immer vor dem ersten „Expose“-Ereignis ein „Resize“-Ereignis.

Anfängliche Geometrie

Wenn die Breite und Höhe des Fensters nicht initialisiert werden, erhält das Fenster eine angemessene Standardgeometrie vom Plattformfenster. Wenn die Position nicht initialisiert wird, überlässt das Plattformfenster die Positionierung des Fensters dem Fenstersystem. Beispielsweise führt der Fenstermanager unter X11 in der Regel eine intelligente Positionierung durch, um zu vermeiden, dass neue Fenster bereits vorhandene Fenster vollständig verdecken. Da jedoch ` setGeometry()` sowohl die Position als auch die Größe initialisiert, sollten Sie stattdessen ` resize()` oder ` setWidth()` sowie ` setHeight()` aufrufen, wenn Sie eine feste Größe, aber eine automatische Positionierung wünschen.

Dokumentation zu Mitgliedstypen

enum QWindow::AncestorMode

Diese Enumeration dient dazu, zu steuern, ob vorübergehende Elternteile als Vorfahren betrachtet werden sollen oder nicht.

KonstanteWertBeschreibung
QWindow::ExcludeTransients0Transiente Eltern werden nicht als Vorfahren betrachtet.
QWindow::IncludeTransients1Vorübergehende Eltern werden als Vorfahren betrachtet.

enum QWindow::Visibility

Diese Enumeration beschreibt, welchen Teil des Bildschirms das Fenster einnimmt oder einnehmen soll.

KonstanteWertBeschreibung
QWindow::Windowed2Das Fenster nimmt einen Teil des Bildschirms ein, jedoch nicht unbedingt den gesamten Bildschirm. Dieser Zustand tritt nur in Fenstersystemen auf, die die gleichzeitige Anzeige mehrerer Fenster unterstützen. In diesem Zustand kann der Benutzer das Fenster manuell verschieben und dessen Größe ändern, sofern die `WindowFlags` dies zulassen und das Fenstersystem dies unterstützt.
QWindow::Minimized3Das Fenster ist auf einen Eintrag oder ein Symbol in der Taskleiste, im Dock, in der Aufgabenliste oder auf dem Desktop reduziert, je nachdem, wie das Fenstersystem minimierte Fenster behandelt.
QWindow::Maximized4Das Fenster nimmt den gesamten Bildschirm ein, und die Titelleiste ist weiterhin sichtbar. Bei den meisten Fenstersystemen wird dieser Zustand durch Klicken auf die Maximieren-Schaltfläche in der Symbolleiste erreicht.
QWindow::FullScreen5Das Fenster nimmt den gesamten Bildschirm ein, ist nicht in der Größe veränderbar und es gibt keine Titelleiste. Auf einigen Plattformen, die die gleichzeitige Anzeige mehrerer Fenster nicht unterstützen, kann dies der übliche Sichtbarkeitszustand sein, wenn das Fenster nicht ausgeblendet ist.
QWindow::AutomaticVisibility1Dies bedeutet, dem Fenster einen standardmäßigen Sichtbarkeitszustand zuzuweisen, der je nach Plattform Vollbild oder Fenstermodus sein kann. Er kann als Parameter an ` setVisibility ` übergeben werden, wird jedoch niemals vom Sichtbarkeits-Accessor zurückgelesen.
QWindow::Hidden0Das Fenster ist in keiner Weise sichtbar, es kann sich jedoch an einen latenten Sichtbarkeitszustand erinnern, der durch Setzen von `AutomaticVisibility` wiederhergestellt werden kann.

Dokumentation zur Eigenschaft

[read-only] active : bool

Diese Eigenschaft gibt den aktiven Status des Fensters an

Zugriffsfunktionen:

bool isActive() const

Benachrichtigungssignal:

void activeChanged()

Siehe auch „ requestActivate()“.

contentOrientation : Qt::ScreenOrientation

Diese Eigenschaft enthält die Ausrichtung des Fensterinhalts

Dies ist ein Hinweis für den Fenstermanager, falls er zusätzliche Inhalte wie Popups, Dialogfelder, Statusleisten oder Ähnliches in Bezug auf das Fenster anzeigen muss.

Die empfohlene Ausrichtung ist „ QScreen::orientation()“, aber eine Anwendung muss nicht alle möglichen Ausrichtungen unterstützen und kann daher die aktuelle Bildschirmausrichtung ignorieren.

Der Unterschied zwischen der Ausrichtung des Fensters und der des Inhalts bestimmt, um wie viel der Inhalt gedreht werden muss. Mit ` QScreen::angleBetween()`, ` QScreen::transformBetween()` und ` QScreen::mapBetween()` lässt sich die erforderliche Transformation berechnen.

Der Standardwert ist Qt::PrimaryOrientation

Zugriffsfunktionen:

Qt::ScreenOrientation contentOrientation() const
void reportContentOrientationChange(Qt::ScreenOrientation orientation)

Benachrichtigungssignal:

void contentOrientationChanged(Qt::ScreenOrientation orientation)

flags : Qt::WindowFlags

Diese Eigenschaft enthält die Fensterflags des Fensters

Die Fensterflags steuern das Erscheinungsbild des Fensters im Fenstersystem, d. h., ob es sich um ein Dialogfeld, ein Popup-Fenster oder ein normales Fenster handelt und ob es eine Titelleiste haben soll usw.

Die tatsächlichen Fensterflags können von den mit `setFlags()` gesetzten Flags abweichen, falls die angeforderten Flags nicht erfüllt werden konnten.

Zugriffsfunktionen:

Qt::WindowFlags flags() const
void setFlags(Qt::WindowFlags flags)

Notifier-Signal:

void flagsChanged(Qt::WindowFlags flags)

Siehe auch ` setFlag()`.

height : int

Diese Eigenschaft enthält die Höhe der Fenstergeometrie

Zugriffsfunktionen:

int height() const
void setHeight(int arg)

Notifier-Signal:

void heightChanged(int arg)

maximumHeight : int

Diese Eigenschaft enthält die maximale Höhe der Fenstergeometrie

Zugriffsfunktionen:

int maximumHeight() const
void setMaximumHeight(int h)

Benachrichtigungssignal:

void maximumHeightChanged(int arg)

maximumWidth : int

Diese Eigenschaft enthält die maximale Breite der Fenstergeometrie

Zugriffsfunktionen:

int maximumWidth() const
void setMaximumWidth(int w)

Notifier-Signal:

void maximumWidthChanged(int arg)

minimumHeight : int

Diese Eigenschaft enthält die Mindesthöhe der Fenstergeometrie

Zugriffsfunktionen:

int minimumHeight() const
void setMinimumHeight(int h)

Benachrichtigungssignal:

void minimumHeightChanged(int arg)

minimumWidth : int

Diese Eigenschaft enthält die Mindestbreite der Fenstergeometrie

Zugriffsfunktionen:

int minimumWidth() const
void setMinimumWidth(int w)

Benachrichtigungssignal:

void minimumWidthChanged(int arg)

modality : Qt::WindowModality

Diese Eigenschaft legt die Modalität des Fensters fest

Ein modales Fenster verhindert, dass andere Fenster Eingabeereignisse empfangen. Qt unterstützt zwei Arten von Modalität: „ Qt::WindowModal “ und „ Qt::ApplicationModal “.

Standardmäßig ist diese Eigenschaft Qt::NonModal

Zugriffsfunktionen:

Qt::WindowModality modality() const
void setModality(Qt::WindowModality modality)

Notifier-Signal:

void modalityChanged(Qt::WindowModality modality)

Siehe auch „ Qt::WindowModality “.

opacity : qreal

Diese Eigenschaft gibt die Deckkraft des Fensters im Fenstersystem an.

Wenn das Fenstersystem die Fensteropazität unterstützt, kann diese Eigenschaft verwendet werden, um das Fenster ein- und auszublenden oder es halbtransparent zu machen.

Ein Wert von 1,0 oder höher wird als vollständig undurchsichtig behandelt, während ein Wert von 0,0 oder niedriger als vollständig transparent behandelt wird. Werte dazwischen stellen unterschiedliche Transparenzgrade zwischen diesen beiden Extremen dar.

Der Standardwert ist 1,0.

Zugriffsfunktionen:

qreal opacity() const
void setOpacity(qreal level)

Notifier-Signal:

void opacityChanged(qreal opacity)

title : QString

Diese Eigenschaft enthält den Titel des Fensters im Fenstersystem

Der Fenstertitel wird je nach Fenstersystem und Fensterflags möglicherweise im Titelbereich der Fensterdekorationen angezeigt. Er kann vom Fenstersystem auch verwendet werden, um das Fenster in anderen Kontexten zu identifizieren, beispielsweise im Task-Umschalter.

Zugriffsfunktionen:

QString title() const
void setTitle(const QString &)

Notifier-Signal:

void windowTitleChanged(const QString &title)

Siehe auch „ flags“ ().

transientParent : QWindow*

Diese Eigenschaft enthält das Fenster, zu dem dieses Fenster als vorübergehendes Popup-Fenster gehört

Dies ist ein Hinweis an den Fenstermanager, dass dieses Fenster ein Dialog oder Popup im Auftrag des vorübergehenden übergeordneten Fensters ist.

Damit das Fenster standardmäßig über seinem vorübergehenden „ parent “ zentriert wird, kann es je nach Fenstermanager erforderlich sein, die Funktion ` setFlags()` mit einem geeigneten ` Qt::WindowType ` (z. B. ` Qt::Dialog`) aufzurufen.

Zugriffsfunktionen:

QWindow *transientParent() const
void setTransientParent(QWindow *parent)

Notifier-Signal:

void transientParentChanged(QWindow *transientParent)

Siehe auch ` parent()`.

visibility : Visibility

Diese Eigenschaft gibt den Bildschirmbelegungsstatus des Fensters an

Die Sichtbarkeit gibt an, ob das Fenster im Fenstersystem als normal, minimiert, maximiert, im Vollbildmodus oder ausgeblendet angezeigt werden soll.

Die Sichtbarkeit auf „ AutomaticVisibility “ zu setzen bedeutet, dem Fenster einen standardmäßigen sichtbaren Zustand zuzuweisen, der je nach Plattform „Vollbild“ oder „Fenster“ sein kann. Beim Auslesen der Sichtbarkeitseigenschaft erhalten Sie immer den aktuellen Zustand, niemals „ AutomaticVisibility “.

Der Standardwert ist „Hidden“.

Zugriffsfunktionen:

QWindow::Visibility visibility() const
void setVisibility(QWindow::Visibility v)

Notifier-Signal:

void visibilityChanged(QWindow::Visibility visibility)

visible : bool

Diese Eigenschaft gibt an, ob das Fenster sichtbar ist oder nicht

Diese Eigenschaft steuert die Sichtbarkeit des Fensters im Fenstersystem.

Standardmäßig ist das Fenster nicht sichtbar. Sie müssen `setVisible(true)`, ` show()` oder eine ähnliche Funktion aufrufen, um es sichtbar zu machen.

Hinweis: Das Ausblenden eines Fensters entfernt das Fenster nicht aus dem Fenstersystem, sondern blendet es lediglich aus. In Fenstersystemen, die Vollbildanwendungen einen eigenen Desktop zuweisen (wie z. B. macOS), wird durch das Ausblenden eines Vollbildfensters dieser Desktop nicht entfernt, sondern bleibt leer. Ein anderes Fenster derselben Anwendung kann im Vollbildmodus angezeigt werden und füllt dann diesen Desktop aus. Verwenden Sie ` QWindow::close `, um ein Fenster vollständig aus dem Fenstersystem zu entfernen.

Zugriffsfunktionen:

bool isVisible() const
void setVisible(bool visible)

Notifier-Signal:

void visibleChanged(bool arg)

Siehe auch ` show()`.

width : int

Diese Eigenschaft enthält die Breite der Fenstergeometrie

Zugriffsfunktionen:

int width() const
void setWidth(int arg)

Notifier-Signal:

void widthChanged(int arg)

x : int

Diese Eigenschaft enthält die x-Position der Fenstergeometrie

Zugriffsfunktionen:

int x() const
void setX(int arg)

Notifier-Signal:

void xChanged(int arg)

y : int

Diese Eigenschaft enthält die y-Position der Fenstergeometrie

Zugriffsfunktionen:

int y() const
void setY(int arg)

Benachrichtigungssignal:

void yChanged(int arg)

Dokumentation der Mitgliedsfunktionen

[explicit] QWindow::QWindow(QScreen *targetScreen = nullptr)

Erstellt ein Fenster als oberste Ebene auf der „ targetScreen “.

Das Fenster wird erst angezeigt, wenn „ setVisible “ (true), „ show()“ oder eine ähnliche Funktion aufgerufen wird.

Siehe auch ` setScreen()`.

[explicit] QWindow::QWindow(QWindow *parent)

Erstellt ein Fenster als untergeordnetes Fenster des angegebenen Fensters „ parent “.

Das Fenster wird in das übergeordnete Fenster eingebettet, seine Koordinaten beziehen sich auf das übergeordnete Fenster.

Der Bildschirm wird vom übergeordneten Fenster geerbt.

Siehe auch ` setParent()`.

[virtual noexcept] QWindow::~QWindow()

Löscht das Fenster.

[slot] void QWindow::alert(int msec)

Löst die Anzeige einer Warnmeldung für msec Millisekunden aus. Wenn msec auf „ 0 “ gesetzt ist (Standardeinstellung), wird die Warnmeldung so lange angezeigt, bis das Fenster wieder aktiv wird. Diese Funktion hat keine Auswirkung auf ein aktives Fenster.

Im Alarmzustand signalisiert das Fenster, dass es Aufmerksamkeit erfordert, beispielsweise durch Blinken oder Auf- und Abbewegen des Eintrags in der Taskleiste.

QSize QWindow::baseSize() const

Gibt die Basisgröße des Fensters zurück.

Siehe auch „ setBaseSize()“.

[slot] bool QWindow::close()

Schließen Sie das Fenster.

Dadurch wird das Fenster geschlossen, was effektiv den Aufruf von ` destroy()` bewirkt und möglicherweise zum Beenden der Anwendung führt. Gibt bei Erfolg ` true ` zurück, andernfalls `false`, wenn ein übergeordnetes Fenster vorhanden ist (in diesem Fall sollte stattdessen das oberste Fenster geschlossen werden).

Siehe auch „ destroy()“, „ QGuiApplication::quitOnLastWindowClosed()“ und „ closeEvent()“.

[virtual protected] void QWindow::closeEvent(QCloseEvent *ev)

Überschreiben Sie diese Funktion, um Schließereignisse zu verarbeiten (ev).

Die Funktion wird aufgerufen, wenn das Schließen des Fensters angefordert wird. Rufen Sie bei diesem Ereignis QEvent::ignore() auf, wenn Sie das Schließen des Fensters verhindern möchten.

Siehe auch ` close()`.

void QWindow::create()

Weist die mit dem Fenster verbundenen Plattformressourcen zu.

An dieser Stelle wird das mit ` setFormat()` festgelegte Oberflächenformat in eine tatsächliche native Oberfläche aufgelöst. Das Fenster bleibt jedoch ausgeblendet, bis ` setVisible()` aufgerufen wird.

Beachten Sie, dass es in der Regel nicht erforderlich ist, diese Funktion direkt aufzurufen, da sie implizit von ` show()`, ` setVisible()`, ` winId()` und anderen Funktionen aufgerufen wird, die Zugriff auf die Plattformressourcen benötigen.

Rufen Sie bei Bedarf destroy() auf, um die Plattformressourcen freizugeben.

Siehe auch destroy().

QCursor QWindow::cursor() const

die Cursorform für dieses Fenster

Siehe auch setCursor() und unsetCursor().

void QWindow::destroy()

Gibt die mit diesem Fenster verbundenen nativen Plattformressourcen frei.

Siehe auch „ create()“.

qreal QWindow::devicePixelRatio() const

Gibt das Verhältnis zwischen physischen Pixeln und geräteunabhängigen Pixeln für das Fenster zurück. Dieser Wert hängt vom Bildschirm ab, auf dem sich das Fenster befindet, und kann sich ändern, wenn das Fenster verschoben wird.

Die Instanz „ QWindow “ erhält ein Ereignis vom Typ „ QEvent::DevicePixelRatioChange “, wenn sich das Gerätepixelverhältnis ändert.

Übliche Werte sind 1,0 auf normalen Bildschirmen und 2,0 auf Apple „Retina“-Bildschirmen.

Hinweis: Bei Fenstern, die nicht durch ein Plattformfenster gestützt werden – d. h., bei denen create() nicht aufgerufen wurde –, greift die Funktion auf das Gerätepixelverhältnis des zugehörigen QScreen zurück.

Siehe auch QScreen::devicePixelRatio() und QEvent::DevicePixelRatioChange.

[override virtual protected] bool QWindow::event(QEvent *ev)

Umsetzt: ` QObject::event(QEvent *e)`.

Überschreiben Sie diese Funktion, um beliebige an das Fenster gesendete Ereignisse (ev) zu verarbeiten. Geben Sie „ true “ zurück, wenn das Ereignis erkannt und verarbeitet wurde.

Denken Sie daran, die Version der Basisklasse aufzurufen, wenn Sie möchten, dass Mausereignisse, Tastenereignisse, Größenänderungsereignisse usw. wie gewohnt weitergeleitet werden.

[virtual protected] void QWindow::exposeEvent(QExposeEvent *ev)

Das „expose“-Ereignis (ev) wird vom Fenstersystem ausgelöst, wenn ein Fenster zwischen dem nicht sichtbaren und dem sichtbaren Zustand wechselt.

Ein „exposed“ Fenster ist für den Benutzer potenziell sichtbar. Wenn das Fenster aus dem Bildschirmbereich verschoben, von einem anderen Fenster vollständig verdeckt, minimiert oder Ähnliches geschieht, kann diese Funktion aufgerufen werden und der Wert von ` isExposed()` kann sich auf `false` ändern. Sie können dieses Ereignis nutzen, um rechenintensive Vorgänge wie Animationen so zu beschränken, dass sie nur ausgeführt werden, wenn das Fenster sichtbar ist.

Dieses Ereignis sollte nicht zum Zeichnen verwendet werden. Um das Zeichnen zu handhaben, implementieren Sie stattdessen ` paintEvent()`.

Ein Resize-Ereignis wird immer vor dem Expose-Ereignis gesendet, wenn ein Fenster zum ersten Mal angezeigt wird.

Siehe auch „ paintEvent()“ und „ isExposed()“.

QString QWindow::filePath() const

den Dateinamen, den dieses Fenster darstellt.

Siehe auch setFilePath().

[virtual protected] void QWindow::focusInEvent(QFocusEvent *ev)

Überschreiben Sie diese Methode, um den Fokus in Ereignissen zu verarbeiten (ev).

Fokus-Ereignisse werden gesendet, wenn das Fenster den Tastaturfokus erhält.

Siehe auch focusOutEvent().

[virtual] QObject *QWindow::focusObject() const

Gibt das „ QObject “ zurück, das als endgültiger Empfänger von Ereignissen dient, die mit dem Fokus verknüpft sind, wie z. B. Tastenereignisse.

[signal] void QWindow::focusObjectChanged(QObject *object)

Dieses Signal wird ausgelöst, wenn der endgültige Empfänger von Ereignissen, die mit dem Fokus verknüpft sind, auf „ object “ geändert wird.

Siehe auch ` focusObject()`.

[virtual protected] void QWindow::focusOutEvent(QFocusEvent *ev)

Überschreiben Sie diese Funktion, um „Focus-Out“-Ereignisse zu verarbeiten (ev).

„Focus-out“-Ereignisse werden gesendet, wenn das Fenster den Tastaturfokus verliert.

Siehe auch focusInEvent().

[override virtual] QSurfaceFormat QWindow::format() const

Implementiert neu: ` QSurface::format()` const.

Gibt das tatsächliche Format dieses Fensters zurück.

Nachdem das Fenster erstellt wurde, gibt diese Funktion das tatsächliche Oberflächenformat des Fensters zurück. Es kann vom angeforderten Format abweichen, wenn das angeforderte Format von der Plattform nicht erfüllt werden konnte. Es kann sich auch um eine Obermenge handeln, beispielsweise können bestimmte Puffergrößen größer sein als angefordert.

Hinweis: Je nach Plattform können bestimmte Werte in diesem Oberflächenformat weiterhin die angeforderten Werte enthalten, d. h. die Werte, die an ` setFormat()` übergeben wurden. Typische Beispiele hierfür sind die OpenGL-Version, das Profil und die Optionen. Diese werden während des Aufrufs von ` create()` möglicherweise nicht aktualisiert, da sie kontextspezifisch sind und ein einzelnes Fenster während seiner Lebensdauer zusammen mit mehreren Kontexten verwendet werden kann. Verwenden Sie stattdessen die Funktion `format()` aus dem „ QOpenGLContext “, um solche Werte abzufragen.

Siehe auch setFormat(), create(), requestedFormat() und QOpenGLContext::format().

QRect QWindow::frameGeometry() const

Gibt die Geometrie des Fensters einschließlich seines Fensterrahmens zurück.

Die Geometrie bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Siehe auch ` geometry()` und ` frameMargins()`.

QMargins QWindow::frameMargins() const

Gibt die Ränder des Fensterrahmens zurück, die das Fenster umgeben.

Siehe auch „ geometry()“ und „ frameGeometry()“.

QPoint QWindow::framePosition() const

Gibt die Position der oberen linken Ecke des Fensters einschließlich des Fensterrahmens zurück.

Dies liefert denselben Wert wie ` frameGeometry()`.topLeft().

Siehe auch „ setFramePosition()“, „ geometry()“ und „ frameGeometry()“.

[static] QWindow *QWindow::fromWinId(WId id)

Erstellt eine lokale Darstellung eines Fensters, das von einem anderen Prozess oder mithilfe von nativen Bibliotheken unterhalb von Qt erstellt wurde.

Bei Angabe des Handles id zu einem nativen Fenster erstellt diese Methode ein QWindow -Objekt, das zur Darstellung des Fensters verwendet werden kann, wenn Methoden wie setParent() und setTransientParent() aufgerufen werden.

Dies kann auf Plattformen, die dies unterstützen, dazu verwendet werden, ein ` QWindow ` in ein natives Fenster einzubetten oder ein natives Fenster in ein ` QWindow` einzubetten.

Wenn fremde Fenster nicht unterstützt werden oder das Einbetten des nativen Fensters im Plattform-Plugin fehlgeschlagen ist, gibt diese Funktion ` nullptr` zurück.

Hinweis: Das resultierende ` QWindow ` sollte nicht dazu verwendet werden, das zugrunde liegende native Fenster zu manipulieren (abgesehen vom Ändern der übergeordneten Instanz) oder Zustandsänderungen des nativen Fensters zu beobachten. Jegliche Unterstützung für diese Art von Operationen ist zufällig, stark plattformabhängig und ungetestet.

Siehe auch ` setParent()`.

QRect QWindow::geometry() const

Gibt die Geometrie des Fensters zurück, wobei der Fensterrahmen unberücksichtigt bleibt.

Die Geometrie bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Siehe auch ` setGeometry()`, ` frameMargins()` und ` frameGeometry()`.

[slot] void QWindow::hide()

Blendet das Fenster aus.

Entspricht dem Aufruf von „ setVisible(false)“.

Siehe auch „ show()“ und „ setVisible()“.

[virtual protected] void QWindow::hideEvent(QHideEvent *ev)

Überschreiben Sie diese Funktion, um Ausblendereignisse zu verarbeiten (ev).

Die Funktion wird aufgerufen, wenn das Fenster im Fenstersystem angefordert hat, ausgeblendet zu werden.

QIcon QWindow::icon() const

Gibt das Symbol des Fensters im Fenstersystem zurück

Siehe auch „ setIcon“ ().

bool QWindow::isActive() const

Gibt „ true “ zurück, wenn das Fenster aktiv ist.

Dies gilt sowohl für das Fenster, das den Eingabefokus hat, als auch für Fenster, die sich in derselben übergeordneten bzw. vorübergehenden übergeordneten Kette wie das Fokusfenster befinden.

In der Regel sollten aktive Fenster aus stilistischer Sicht als aktiv erscheinen.

Um das Fenster zu ermitteln, das derzeit den Fokus hat, verwenden Sie ` QGuiApplication::focusWindow()`.

Hinweis: Getter -Funktion für die Eigenschaft „ active “.

Siehe auch ` requestActivate()`.

bool QWindow::isAncestorOf(const QWindow *child, QWindow::AncestorMode mode = IncludeTransients) const

Gibt ` true ` zurück, wenn das Fenster ein Vorfahr des angegebenen ` child` ist. Wenn ` mode ` auf ` IncludeTransients` gesetzt ist, werden auch vorübergehende Eltern als Vorfahren berücksichtigt.

bool QWindow::isExposed() const

Gibt zurück, ob dieses Fenster im Fenstersystem sichtbar ist.

Wenn das Fenster nicht sichtbar ist, wird es zwar von der Anwendung angezeigt, ist aber im Fenstersystem noch nicht zu sehen; daher sollte die Anwendung Animationen und andere grafische Aktivitäten minimieren.

Bei jeder Änderung dieses Werts wird ein „ exposeEvent()“ gesendet.

Siehe auch ` exposeEvent()`.

bool QWindow::isModal() const

Gibt zurück, ob das Fenster modal ist.

Ein modales Fenster verhindert, dass andere Fenster Eingaben empfangen können.

Siehe auch „ QWindow::modality “.

bool QWindow::isTopLevel() const

Gibt zurück, ob das Fenster ein Fenster der obersten Ebene ist, d. h. kein übergeordnetes Fenster hat.

[virtual protected] void QWindow::keyPressEvent(QKeyEvent *ev)

Überschreiben Sie diese Methode, um Tastendruckereignisse zu verarbeiten (ev).

Siehe auch keyReleaseEvent().

[virtual protected] void QWindow::keyReleaseEvent(QKeyEvent *ev)

Überschreiben Sie diese Methode, um Tastenloslass-Ereignisse zu verarbeiten (ev).

Siehe auch keyPressEvent().

[slot] void QWindow::lower()

Das Fenster im Fenstersystem nach unten verschieben.

Fordert an, dass das Fenster nach unten verschoben wird, sodass es unterhalb anderer Fenster erscheint.

[since 6.0] QPointF QWindow::mapFromGlobal(const QPointF &pos) const

Konvertiert die globalen Bildschirmkoordinaten pos in Fensterkoordinaten.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch ` mapToGlobal()`.

QPoint QWindow::mapFromGlobal(const QPoint &pos) const

Dies ist eine überladene Funktion.

[since 6.0] QPointF QWindow::mapToGlobal(const QPointF &pos) const

Wandelt die Fensterkoordinaten pos in globale Bildschirmkoordinaten um. Beispielsweise würde mapToGlobal(QPointF(0,0)) die globalen Koordinaten des Pixels in der oberen linken Ecke des Fensters liefern.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch ` mapFromGlobal()`.

QPoint QWindow::mapToGlobal(const QPoint &pos) const

Dies ist eine überladene Funktion.

QRegion QWindow::mask() const

Gibt die für das Fenster festgelegte Maske zurück.

Die Maske ist ein Hinweis an das Fenstersystem, dass die Anwendung keine Maus- oder Touch-Eingaben außerhalb des angegebenen Bereichs empfangen möchte.

Siehe auch setMask().

QSize QWindow::maximumSize() const

Gibt die maximale Größe des Fensters zurück.

Siehe auch „ setMaximumSize()“.

QSize QWindow::minimumSize() const

Gibt die minimale Größe des Fensters zurück.

Siehe auch ` setMinimumSize()`.

[signal] void QWindow::modalityChanged(Qt::WindowModality modality)

Dieses Signal wird ausgelöst, wenn sich die Eigenschaft „Qwindow::modality“ auf „ modality “ ändert.

Hinweis: Notifier -Signal für die Eigenschaft „ modality “.

[virtual protected] void QWindow::mouseDoubleClickEvent(QMouseEvent *ev)

Überschreiben Sie diese Funktion, um Doppelklick-Ereignisse der Maus zu verarbeiten (ev).

Siehe auch mousePressEvent() und QStyleHints::mouseDoubleClickInterval().

[virtual protected] void QWindow::mouseMoveEvent(QMouseEvent *ev)

Überschreiben Sie diese Methode, um Mausbewegungsereignisse zu verarbeiten (ev).

[virtual protected] void QWindow::mousePressEvent(QMouseEvent *ev)

Überschreiben Sie diese Methode, um Mausklick-Ereignisse zu verarbeiten (ev).

Siehe auch mouseReleaseEvent().

[virtual protected] void QWindow::mouseReleaseEvent(QMouseEvent *ev)

Überschreiben Sie diese Methode, um Maus-Release-Ereignisse zu verarbeiten (ev).

Siehe auch mousePressEvent().

[virtual protected] void QWindow::moveEvent(QMoveEvent *ev)

Überschreiben Sie diese Methode, um Ereignisse beim Verschieben des Fensters zu verarbeiten (ev).

[virtual protected] bool QWindow::nativeEvent(const QByteArray &eventType, void *message, qintptr *result)

Überschreiben Sie diese Methode, um plattformabhängige Ereignisse zu verarbeiten. Es werden die Methoden „ eventType “, „ message “ und „ result “ übergeben.

Dies kann dazu führen, dass Ihre Anwendung nicht portierbar ist.

Sollte nur dann „true“ zurückgeben, wenn das Ereignis verarbeitet wurde.

[virtual protected, since 6.0] void QWindow::paintEvent(QPaintEvent *ev)

Das „Paint“-Ereignis (ev) wird vom Fenstersystem gesendet, sobald ein Bereich des Fensters neu gezeichnet werden muss, beispielsweise beim ersten Anzeigen des Fensters oder wenn Teile des Fensters durch das Verschieben eines anderen Fensters freigelegt werden.

Von der Anwendung wird erwartet, dass sie als Reaktion auf das „paint“-Ereignis das Fenster rendert, unabhängig davon, ob das Fenster gerade sichtbar ist oder nicht. Ein „paint“-Ereignis kann beispielsweise gesendet werden, bevor das Fenster sichtbar wird, um es für die Darstellung beim Benutzer vorzubereiten.

Diese Funktion wurde in Qt 6.0 eingeführt.

Siehe auch ` exposeEvent()`.

QWindow *QWindow::parent(QWindow::AncestorMode mode = ExcludeTransients) const

Gibt das übergeordnete Fenster zurück, sofern vorhanden.

Wenn „ mode “ auf „ IncludeTransients “ gesetzt ist, wird das vorübergehende übergeordnete Fenster zurückgegeben, falls kein übergeordnetes Fenster vorhanden ist.

Ein Fenster ohne übergeordnetes Fenster wird als Fenster der obersten Ebene bezeichnet.

Siehe auch „ setParent()“.

QPoint QWindow::position() const

Gibt die Position des Fensters auf dem Desktop ohne den Fensterrahmen zurück

Hinweis: Nicht alle Fenstersysteme unterstützen das Festlegen oder Abfragen der Positionen von Fenstern der obersten Ebene. Auf einem solchen System hat das programmgesteuerte Verschieben von Fenstern möglicherweise keine Wirkung, und für die aktuellen Positionen werden möglicherweise künstliche Werte zurückgegeben, wie z. B. ` QPoint(0, 0)`.

Siehe auch ` setPosition()`.

[slot] void QWindow::raise()

Das Fenster im Fenstersystem nach oben verschieben.

Fordert an, dass das Fenster nach oben verschoben wird, sodass es über anderen Fenstern angezeigt wird.

[slot] void QWindow::requestActivate()

Fordert an, dass das Fenster aktiviert wird, d. h. den Tastaturfokus erhält.

Siehe auch isActive() und QGuiApplication::focusWindow().

[slot] void QWindow::requestUpdate()

Plant ein „ QEvent::UpdateRequest “-Ereignis, das an dieses Fenster übermittelt werden soll.

Das Ereignis wird auf Plattformen, auf denen dies möglich ist, synchron mit der Bildschirmsynchronisation (vsync) übermittelt. Andernfalls erfolgt die Übermittlung des Ereignisses mit einer Verzögerung von höchstens 5 ms. Wenn der dem Fenster zugeordnete Bildschirm eine Bildwiederhol refresh rate von mehr als 60 Hz meldet, wird das Intervall auf einen Wert unter 5 reduziert. Die zusätzliche Zeit dient dazu, der Ereignisschleife etwas Leerlaufzeit zum Sammeln von Systemereignissen zu geben, und kann mithilfe der Umgebungsvariable `QT_QPA_UPDATE_IDLE_TIME` überschrieben werden.

Bei der Steuerung von Animationen sollte diese Funktion einmalig nach Abschluss des Zeichnungsvorgangs aufgerufen werden. Ein mehrfacher Aufruf dieser Funktion führt dazu, dass ein einzelnes Ereignis an das Fenster übermittelt wird.

Unterklassen von ` QWindow ` sollten ` event()` neu implementieren, das Ereignis abfangen und den Rendering-Code der Anwendung aufrufen, um anschließend die Implementierung der Basisklasse aufzurufen.

Hinweis: Die Neuimplementierung von ` event()` durch die Unterklasse muss die Implementierung der Basisklasse aufrufen, es sei denn, es besteht absolute Gewissheit, dass das Ereignis nicht von der Basisklasse verarbeitet werden muss. Beispielsweise stützt sich die Standardimplementierung dieser Funktion auf ` QEvent::Timer `-Ereignisse. Würden diese herausgefiltert, würde dies daher die Übermittlung der Aktualisierungsereignisse unterbrechen.

QSurfaceFormat QWindow::requestedFormat() const

Gibt das angeforderte Oberflächenformat dieses Fensters zurück.

Wenn das angeforderte Format von der Plattformimplementierung nicht unterstützt wurde, weicht das „requestedFormat“ vom tatsächlichen Fensterformat ab.

Dies ist der Wert, der mit ` setFormat()` festgelegt wurde.

Siehe auch „ setFormat()“ und „ format()“.

void QWindow::resize(const QSize &newSize)

Legen Sie die Größe des Fensters (ohne Fensterrahmen) auf newSize

Siehe auch size() und geometry().

void QWindow::resize(int w, int h)

Lege die Größe des Fensters – ohne Fensterrahmen – auf ein QSize fest, das aus der Breite w und der Höhe h

Informationen zur interaktiven Größenänderung von Fenstern finden Sie unter ` startSystemResize()`.

Siehe auch ` size()` und ` geometry()`.

[virtual protected] void QWindow::resizeEvent(QResizeEvent *ev)

Überschreiben Sie diese Methode, um Ereignisse zur Größenänderung zu verarbeiten (ev).

Das Resize-Ereignis wird immer dann ausgelöst, wenn die Größe des Fensters im Fenstersystem geändert wird – entweder direkt durch die Bestätigung einer Anforderung an ` setGeometry()` oder ` resize()` durch das Fenstersystem oder indirekt durch die manuelle Größenänderung des Fensters durch den Benutzer.

[since 6.9] QMargins QWindow::safeAreaMargins() const

Gibt die Ränder des sicheren Bereichs des Fensters zurück.

Der sichere Bereich stellt den Teil des Fensters dar, in dem Inhalte sicher platziert werden können, ohne dass die Gefahr besteht, dass sie von anderen UI-Elementen, wie z. B. System-UIs, verdeckt werden oder mit diesen in Konflikt geraten.

Die Ränder beziehen sich auf die interne Geometrie des Fensters, d. h. QRect(0, 0, width(), height()).

void PaintDeviceWindow::paintEvent(QPaintEvent *)
{
    QPainter painter(this);
    QRect rect(0, 0, width(), height());
    painter.fillRect(rect, QGradient::SunnyMorning);
    painter.fillRect(rect - safeAreaMargins(), QGradient::DustyGrass);
}

Diese Funktion wurde in Qt 6.9 eingeführt.

Siehe auch geometry() und safeAreaMarginsChanged().

[signal, since 6.9] void QWindow::safeAreaMarginsChanged(QMargins margins)

Dieses Signal wird ausgelöst, wenn sich die Ränder des Sicherheitsbereichs auf „ margins “ geändert haben.

Diese Funktion wurde in Qt 6.9 eingeführt.

Siehe auch „ safeAreaMargins()“.

QScreen *QWindow::screen() const

Gibt den Bildschirm zurück, auf dem das Fenster angezeigt wird, oder null, falls kein Bildschirm vorhanden ist.

Bei untergeordneten Fenstern gibt diese Funktion den Bildschirm des entsprechenden Fensters der obersten Ebene zurück.

Siehe auch „ setScreen()“ und „ QScreen::virtualSiblings()“.

[signal] void QWindow::screenChanged(QScreen *screen)

Dieses Signal wird ausgelöst, wenn sich die Eigenschaft „ screen “ eines Fensters ändert – entweder durch explizite Festlegung mit „ setScreen()“ oder automatisch, wenn der Bildschirm des Fensters entfernt wird.

void QWindow::setBaseSize(const QSize &size)

Legt die Basis size des Fensters fest.

Die Basisgröße wird zur Berechnung einer geeigneten Fenstergröße herangezogen, wenn das Fenster „ sizeIncrement()“ definiert.

Siehe auch „ setMinimumSize()“, „ setMaximumSize()“, „ setSizeIncrement()“ und „ baseSize()“.

void QWindow::setCursor(const QCursor &cursor)

Cursorform für dieses Fenster festlegen

Der Maus cursor us nimmt diese Form an, wenn er sich über diesem Fenster befindet, sofern kein eigener Cursor festgelegt wurde. Eine Auswahl nützlicher Formen finden Sie im „ list of predefined cursor objects “.

Wenn kein Cursor festgelegt wurde oder nach einem Aufruf von ` unsetCursor()`, wird der Cursor des übergeordneten Fensters verwendet.

Standardmäßig hat der Cursor die Form „ Qt::ArrowCursor “.

Einige zugrunde liegende Fensterimplementierungen setzen den Cursor zurück, wenn er ein Fenster verlässt, selbst wenn die Maus erfasst ist. Wenn Sie einen Cursor für alle Fenster festlegen möchten, auch wenn sich dieser außerhalb des Fensters befindet, sollten Sie die Funktion ` QGuiApplication::setOverrideCursor()` in Betracht ziehen.

Siehe auch „ cursor()“ und „ QGuiApplication::setOverrideCursor()“.

void QWindow::setFilePath(const QString &filePath)

Legen Sie den Dateinamen fest, den dieses Fenster darstellt.

Das Fenstersystem verwendet möglicherweise die Funktion ` filePath `, um den Pfad des Dokuments, das dieses Fenster darstellt, in der Kachelleiste anzuzeigen.

Siehe auch ` filePath()`.

void QWindow::setFlag(Qt::WindowType flag, bool on = true)

Setzt das Fenster-Flag „ flag “ für dieses Fenster, wenn „ on “ wahr ist; andernfalls wird das Flag zurückgesetzt.

Siehe auch „ setFlags()“, „ flags()“ und „ type()“.

void QWindow::setFormat(const QSurfaceFormat &format)

Legt das Oberflächen format des Fensters fest.

Das Format bestimmt Eigenschaften wie Farbtiefe, Alpha-Wert, Größe des Tiefen- und Stencil-Puffers usw. Um einem Fenster beispielsweise einen transparenten Hintergrund zu geben (vorausgesetzt, das Fenstersystem unterstützt Compositing und andere Inhalte im Fenster machen es nicht wieder undurchsichtig):

QSurfaceFormat format;
format.setAlphaBufferSize(8);
window.setFormat(format);

Das Oberflächenformat wird in der Funktion ` create()` aufgelöst. Der Aufruf dieser Funktion nach dem Aufruf von ` create()` führt nicht zu einer erneuten Auflösung des Oberflächenformats der nativen Oberfläche.

Wenn das Format nicht explizit über diese Funktion festgelegt wird, wird das von ` QSurfaceFormat::defaultFormat()` zurückgegebene Format verwendet. Das bedeutet, dass bei mehreren Fenstern einzelne Aufrufe dieser Funktion durch einen einzigen Aufruf von ` QSurfaceFormat::setDefaultFormat()` vor dem Erstellen des ersten Fensters ersetzt werden können.

Siehe auch format(), create(), destroy() und QSurfaceFormat::setDefaultFormat().

void QWindow::setFramePosition(const QPoint &point)

Legt die Position der oberen linken Ecke des Fensters (point) einschließlich des Fensterrahmens fest.

Die Position bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Siehe auch ` framePosition()`, ` setGeometry()` und ` frameGeometry()`.

[since 6.12] void QWindow::setFramePosition(int x, int y)

Setzt die Position der oberen linken Ecke des Fensters einschließlich seines Fensterrahmens auf ` x`, y

Die Position bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Diese Funktion wurde in Qt 6.12 eingeführt.

Siehe auch ` setGeometry()` und ` frameGeometry()`.

[slot] void QWindow::setGeometry(const QRect &rect)

Legt die Geometrie des Fensters (ohne den Fensterrahmen) auf „ rect “ fest.

Die Geometrie bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Hinweis: Dieser Slot ist überladen. So stellen Sie eine Verbindung zu diesem Slot her:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        window, qOverload(&QWindow::setGeometry));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        window, [receiver = window](const QRect &rect) { receiver->setGeometry(rect); });
Weitere Beispiele und Vorgehensweisen finden Sie unter „An überladene Slots anschließen“.

Siehe auch ` geometry()`.

[slot] void QWindow::setGeometry(int posx, int posy, int w, int h)

Legt die Geometrie des Fensters – ohne dessen Fensterrahmen – als Rechteck fest, das aus den Werten von „ posx “, „ posy “, „ w “ und „ h “ gebildet wird.

Die Geometrie bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Hinweis: Dieser Slot ist überladen. So stellen Sie eine Verbindung zu diesem Slot her:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        window, qOverload(&QWindow::setGeometry));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        window, [receiver = window](int posx, int posy, int w, int h) { receiver->setGeometry(posx, posy, w, h); });
Weitere Beispiele und Vorgehensweisen finden Sie unter „Anschließen an überladene Slots“.

Siehe auch ` geometry()`.

void QWindow::setIcon(const QIcon &icon)

Legt das „ icon “ des Fensters im Fenstersystem fest

Das Fenstersymbol kann vom Fenstersystem beispielsweise zur Gestaltung des Fensters und/oder im Task-Umschalter verwendet werden.

Hinweis: Unter macOS ist das Symbol in der Titelleiste für Fenster vorgesehen, die Dokumente darstellen, und wird nur angezeigt, wenn auch ein Dateipfad festgelegt ist.

Siehe auch „ icon “ () und „ setFilePath “ ().

bool QWindow::setKeyboardGrabEnabled(bool grab)

Legt fest, ob die Tastaturblockierung aktiviert sein soll oder nicht (grab).

Ist der Rückgabewert „true“, empfängt das Fenster alle Tastenereignisse, bis setKeyboardGrabEnabled(false) aufgerufen wird; andere Fenster erhalten überhaupt keine Tastenereignisse. Mausereignisse sind davon nicht betroffen. Verwenden Sie setMouseGrabEnabled(), wenn Sie diese abfangen möchten.

Siehe auch ` setMouseGrabEnabled()`.

void QWindow::setMask(const QRegion &region)

Legt die Maske des Fensters fest.

Die Maske ist ein Hinweis an das Fenstersystem, dass die Anwendung keine Maus- oder Touch-Eingaben außerhalb der angegebenen „ region “ empfangen möchte.

Der Fenstermanager kann entscheiden, ob er Bereiche des Fensters anzeigt, die nicht in der Maske enthalten sind, oder nicht; daher liegt es in der Verantwortung der Anwendung, die Bereiche, die nicht Teil der Maske sind, transparent zu machen.

Siehe auch ` mask()` ().

void QWindow::setMaximumSize(const QSize &size)

Legt die maximale Größe des Fensters fest.

Dies ist ein Hinweis an den Fenstermanager, eine Größenänderung über die angegebene Größe size hinaus zu verhindern.

Siehe auch ` setMinimumSize()` und ` maximumSize()`.

void QWindow::setMinimumSize(const QSize &size)

Legt die Mindestgröße des Fensters fest.

Dies ist ein Hinweis an den Fenstermanager, eine Größenänderung unterhalb der angegebenen Größe size zu verhindern.

Siehe auch ` setMaximumSize()` und ` minimumSize()`.

bool QWindow::setMouseGrabEnabled(bool grab)

Legt fest, ob das „Mouse Grab“ aktiviert sein soll oder nicht (grab).

Ist der Rückgabewert „true“, empfängt das Fenster alle Mausereignisse, bis setMouseGrabEnabled(false) aufgerufen wird; andere Fenster erhalten überhaupt keine Mausereignisse. Tastaturereignisse sind davon nicht betroffen. Verwenden Sie setKeyboardGrabEnabled(), wenn Sie diese abfangen möchten.

Siehe auch ` setKeyboardGrabEnabled()`.

void QWindow::setParent(QWindow *parent)

Legt das Fenster „ parent “ fest. Dadurch übernimmt das Fenstersystem die Verwaltung des Ausschnitts des Fensters, sodass es auf das Fenster „ parent “ zugeschnitten wird.

Wird „ parent “ auf „ nullptr “ gesetzt, wird das Fenster zu einem Fenster der obersten Ebene.

Ist „ parent “ ein mit „ fromWinId()“ erstelltes Fenster, wird das aktuelle Fenster in „ parent “ eingebettet, sofern die Plattform dies unterstützt.

Siehe auch parent().

void QWindow::setPosition(const QPoint &pt)

Die Position des Fensters auf dem Desktop wie folgt festlegen: pt

Die Position bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Informationen zum interaktiven Verschieben von Fenstern finden Sie unter startSystemMove(). Informationen zum interaktiven Ändern der Fenstergröße finden Sie unter startSystemResize().

Hinweis: Nicht alle Fenstersysteme unterstützen das Festlegen oder Abfragen der Positionen von Fenstern der obersten Ebene. Auf einem solchen System hat das programmgesteuerte Verschieben von Fenstern möglicherweise keine Wirkung, und für die aktuellen Positionen werden möglicherweise künstliche Werte zurückgegeben, wie z. B. QPoint(0, 0).

Siehe auch position() und startSystemMove().

void QWindow::setPosition(int posx, int posy)

Die Position des Fensters auf dem Desktop auf „ posx “ festlegen, posy

Die Position bezieht sich auf die `virtualGeometry()` des jeweiligen Bildschirms.

Siehe auch ` position()`.

void QWindow::setScreen(QScreen *newScreen)

Legt den Bildschirm fest, auf dem das Fenster angezeigt werden soll.

Wenn das Fenster bereits erstellt wurde, wird es auf dem Bildschirm „ newScreen “ neu erstellt.

Hinweis: Wenn der Bildschirm Teil eines virtuellen Desktops mit mehreren Bildschirmen ist, wird das Fenster nicht automatisch auf „ newScreen “ verschoben. Um das Fenster relativ zum Bildschirm zu positionieren, verwenden Sie die Position „topLeft()“ des Bildschirms.

Diese Funktion funktioniert nur für Fenster der obersten Ebene.

Siehe auch ` screen()` und ` QScreen::virtualSiblings()`.

void QWindow::setSizeIncrement(const QSize &size)

Legt die Schrittweite (size) des Fensters fest.

Wenn der Benutzer die Größe des Fensters ändert, erfolgt die Anpassung in Schritten von sizeIncrement().width() Pixel in horizontaler Richtung und sizeIncrement().height() Pixel in vertikaler Richtung, wobei baseSize() als Basis dient.

Standardmäßig enthält diese Eigenschaft eine Größe mit der Breite und Höhe Null.

Das Fenstersystem unterstützt möglicherweise keine Größenschritte.

Siehe auch sizeIncrement(), setBaseSize(), setMinimumSize() und setMaximumSize().

void QWindow::setSurfaceType(QSurface::SurfaceType surfaceType)

Legt die „ surfaceType “ des Fensters fest.

Gibt an, ob das Fenster für die Rasterdarstellung mit ` QBackingStore` oder für die OpenGL-Darstellung mit ` QOpenGLContext` vorgesehen ist.

Die „ surfaceType “ wird verwendet, wenn die native Oberfläche in der Funktion „ create()“ erstellt wird. Wird diese Funktion aufgerufen, nachdem die native Oberfläche bereits erstellt wurde, müssen die Funktionen „ destroy()“ und „ create()“ aufgerufen werden, um die alte native Oberfläche freizugeben und eine neue zu erstellen.

Siehe auch „ surfaceType()“, „ QBackingStore “, „ QOpenGLContext “, „ create()“ und „ destroy()“.

void QWindow::setVulkanInstance(QVulkanInstance *instance)

Ordnet dieses Fenster der angegebenen Vulkan- instance zu.

instance muss gültig bleiben, solange diese „ QWindow “-Instanz existiert.

Siehe auch vulkanInstance().

void QWindow::setWindowState(Qt::WindowState state)

Den Bildschirmbelegungsstatus des Fensters festlegen

Der Fenster state gibt an, ob das Fenster im Fenstersystem als maximiert, minimiert, im Vollbildmodus oder im Normalmodus angezeigt wird.

Der Enum-Wert „ Qt::WindowActive “ ist kein zulässiger Parameter.

Siehe auch windowState(), showNormal(), showFullScreen(), showMinimized(), showMaximized() und setWindowStates().

void QWindow::setWindowStates(Qt::WindowStates state)

Den Bildschirmbelegungsstatus des Fensters festlegen

Die Fenster state n geben an, ob das Fenster im Fenstersystem maximiert, minimiert und/oder im Vollbildmodus angezeigt wird.

Das Fenster kann sich in einer Kombination mehrerer Zustände befinden. Ist das Fenster beispielsweise sowohl minimiert als auch maximiert, wird es minimiert angezeigt; ein Klick auf den Eintrag in der Taskleiste stellt jedoch den maximierten Zustand wieder her.

Der Enum-Wert „ Qt::WindowActive “ sollte nicht gesetzt werden.

Siehe auch windowStates(), showNormal(), showFullScreen(), showMinimized() und showMaximized().

[slot] void QWindow::show()

Zeigt das Fenster an.

Bei untergeordneten Fenstern entspricht dies dem Aufruf von ` showNormal()`. Andernfalls entspricht dies dem Aufruf von ` showFullScreen()`, ` showMaximized()` oder ` showNormal()`, je nach dem Standardverhalten der Plattform für den Fenstertyp und die Flags.

Siehe auch showFullScreen(), showMaximized(), showNormal(), hide(), QStyleHints::showIsFullScreen() und flags().

[virtual protected] void QWindow::showEvent(QShowEvent *ev)

Überschreiben Sie diese Funktion, um „show“-Ereignisse zu verarbeiten (ev).

Die Funktion wird aufgerufen, wenn das Fenster angefordert hat, sichtbar gemacht zu werden.

Wird das Fenster vom Fenstersystem erfolgreich angezeigt, folgen darauf ein Resize- und ein Expose-Ereignis.

[slot] void QWindow::showFullScreen()

Zeigt das Fenster im Vollbildmodus an.

Entspricht dem Aufruf von ` setWindowStates` (Qt::WindowFullScreen) und anschließend von ` setVisible` (true).

Informationen zu plattformspezifischen Aspekten und Einschränkungen finden Sie in der Dokumentation zu ` QWidget::showFullScreen()`.

Siehe auch „ setWindowStates()“ und „ setVisible()“.

[slot] void QWindow::showMaximized()

Zeigt das Fenster in maximierter Ansicht an.

Entspricht dem Aufruf von ` setWindowStates` (Qt::WindowMaximized) und anschließend von ` setVisible(true)`.

Siehe auch ` setWindowStates()` und ` setVisible()`.

[slot] void QWindow::showMinimized()

Zeigt das Fenster minimiert an.

Entspricht dem Aufruf von ` setWindowStates` (Qt::WindowMinimized) und anschließend ` setVisible(true)`.

Siehe auch ` setWindowStates()` und ` setVisible()`.

[slot] void QWindow::showNormal()

Zeigt das Fenster im normalen Modus an, d. h. weder maximiert, minimiert noch im Vollbildmodus.

Entspricht dem Aufruf von ` setWindowStates` (Qt::WindowNoState) und anschließend ` setVisible(true)`.

Siehe auch ` setWindowStates()` und ` setVisible()`.

[override virtual] QSize QWindow::size() const

Implementiert: QSurface::size() const.

Gibt die Größe des Fensters ohne den Fensterrahmen zurück

Siehe auch ` resize()`.

QSize QWindow::sizeIncrement() const

Gibt die Schrittweite der Fenstergröße zurück.

Siehe auch „ setSizeIncrement()“.

[slot] bool QWindow::startSystemMove()

Einen systemspezifischen Verschiebungsvorgang starten

Der Aufruf dieser Methode startet auf Plattformen, die dies unterstützen, einen interaktiven Verschiebevorgang für das Fenster. Das tatsächliche Verhalten kann je nach Plattform variieren. In der Regel folgt das Fenster dabei dem Mauszeiger, bis eine Maustaste losgelassen wird.

Auf Plattformen, die dies unterstützen, wird diese Methode zum Verschieben von Fenstern gegenüber ` setPosition` bevorzugt, da sie ein naturgetreueres Look-and-Feel beim Verschieben von Fenstern ermöglicht, z. B. indem der Fenstermanager dieses Fenster an andere Fenster ausrichtet oder spezielle Anordnungs- oder Größenänderungsfunktionen mit Animationen beim Ziehen an den Bildschirmrand bietet. Darüber hinaus wird auf einigen Plattformen wie Wayland „ setPosition “ nicht unterstützt, sodass dies die einzige Möglichkeit für die Anwendung ist, ihre Position zu beeinflussen.

Gibt „true“ zurück, wenn der Vorgang vom System unterstützt wurde.

[slot] bool QWindow::startSystemResize(Qt::Edges edges)

Einen systemspezifischen Vorgang zur Größenänderung starten

Der Aufruf dieser Funktion startet auf Plattformen, die dies unterstützen, einen interaktiven Vorgang zur Größenänderung des Fensters. Das tatsächliche Verhalten kann je nach Plattform variieren. In der Regel wird das Fenster so in der Größe angepasst, dass sein Rand dem Mauszeiger folgt.

Auf Plattformen, die dies unterstützen, wird diese Methode zur Größenänderung von Fenstern gegenüber ` setGeometry` bevorzugt, da sie ein naturgetreueres Erscheinungsbild bei der Größenänderung von Fenstern ermöglicht, z. B. indem der Fenstermanager dieses Fenster an andere Fenster ausrichtet oder ein spezielles Größenänderungsverhalten mit Animationen beim Ziehen an den Bildschirmrand bietet.

edges sollte entweder eine einzelne Kante oder zwei benachbarte Kanten (eine Ecke) sein. Andere Werte sind nicht zulässig.

Gibt „true“ zurück, wenn der Vorgang vom System unterstützt wurde.

[override virtual] QSurface::SurfaceType QWindow::surfaceType() const

Implementiert neu: ` QSurface::surfaceType()` const.

Gibt den Oberflächentyp des Fensters zurück.

Siehe auch setSurfaceType().

[virtual protected] void QWindow::tabletEvent(QTabletEvent *ev)

Überschreiben Sie diese Methode, um Ereignisse beim Drücken, Bewegen und Loslassen des Tablets zu verarbeiten (ev).

Ereignisse beim Annähern und Verlassen des Bereichs werden nicht an Fenster gesendet, sondern an die Anwendungsinstanz übermittelt.

[virtual protected] void QWindow::touchEvent(QTouchEvent *ev)

Überschreiben Sie diese Methode, um Touch-Ereignisse zu verarbeiten (ev).

Qt::WindowType QWindow::type() const

Gibt den Typ des Fensters zurück.

Dies gibt den Teil der Fensterflags zurück, der angibt, ob es sich bei dem Fenster um ein Dialogfeld, einen Tooltip, ein Popup-Fenster, ein normales Fenster usw. handelt.

Siehe auch „ flags()“ und „ setFlags()“.

void QWindow::unsetCursor()

Stellt den Standard-Pfeilcursor für dieses Fenster wieder her.

QVulkanInstance *QWindow::vulkanInstance() const

Gibt die zugehörige Vulkan-Instanz zurück, sofern eine festgelegt wurde; andernfalls „ nullptr “.

Siehe auch ` setVulkanInstance()`.

[virtual protected] void QWindow::wheelEvent(QWheelEvent *ev)

Überschreiben Sie diese Methode, um Mausrad- oder andere Radereignisse zu verarbeiten (ev).

WId QWindow::winId() const

Gibt die Plattform-ID des Fensters zurück.

Hinweis: Diese Funktion bewirkt die Erstellung des Plattformfensters, falls dieses noch nicht vorhanden ist. Gibt 0 zurück, wenn die Erstellung des Plattformfensters fehlgeschlagen ist.

Auf Plattformen, auf denen diese ID nützlich sein könnte, repräsentiert der zurückgegebene Wert das Fenster innerhalb des entsprechenden Bildschirms eindeutig.

Siehe auch ` screen()`.

Qt::WindowState QWindow::windowState() const

der Bildschirmbelegungsstatus des Fensters

Siehe auch setWindowState() und windowStates().

[signal] void QWindow::windowStateChanged(Qt::WindowState windowState)

Dieses Signal wird ausgelöst, wenn sich die „ windowState “ ändert – entweder durch explizite Festlegung mit „ setWindowStates()“ oder automatisch, wenn der Benutzer auf eine der Schaltflächen in der Titelleiste klickt oder auf andere Weise.

Qt::WindowStates QWindow::windowStates() const

der Bildschirmbelegungsstatus des Fensters

Das Fenster kann sich in einer Kombination aus mehreren Zuständen befinden. Ist das Fenster beispielsweise sowohl minimiert als auch maximiert, wird es minimiert angezeigt; durch Klicken auf den Eintrag in der Taskleiste wird es jedoch wieder in den maximierten Zustand versetzt.

Siehe auch setWindowStates().

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