QWindow Class

Die Klasse QWindow repräsentiert ein Fenster im zugrundeliegenden Windowing-System. Mehr...

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

QPaintDeviceWindow, QQuickWindow, und 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)
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)
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

Reimplementierte ö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 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)
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)
virtual void exposeEvent(QExposeEvent *ev)
virtual void focusInEvent(QFocusEvent *ev)
virtual void focusOutEvent(QFocusEvent *ev)
virtual void hideEvent(QHideEvent *ev)
virtual void keyPressEvent(QKeyEvent *ev)
virtual void keyReleaseEvent(QKeyEvent *ev)
virtual void mouseDoubleClickEvent(QMouseEvent *ev)
virtual void mouseMoveEvent(QMouseEvent *ev)
virtual void mousePressEvent(QMouseEvent *ev)
virtual void mouseReleaseEvent(QMouseEvent *ev)
virtual void moveEvent(QMoveEvent *ev)
virtual bool nativeEvent(const QByteArray &eventType, void *message, qintptr *result)
(since 6.0) virtual void paintEvent(QPaintEvent *ev)
virtual void resizeEvent(QResizeEvent *ev)
virtual void showEvent(QShowEvent *ev)
virtual void tabletEvent(QTabletEvent *ev)
virtual void touchEvent(QTouchEvent *ev)
virtual void wheelEvent(QWheelEvent *ev)

Reimplementierte geschützte Funktionen

virtual bool event(QEvent *ev) override

Detaillierte Beschreibung

Ein Fenster, dem ein Elternteil zugewiesen wird, wird zu einem nativen Kindfenster des Elternfensters.

Eine Anwendung wird typischerweise QWidget oder QQuickView für ihr UI verwenden und nicht direkt QWindow. Dennoch ist es möglich, direkt in ein QWindow mit QBackingStore oder QOpenGLContext zu rendern, wenn man die Abhängigkeiten auf ein Minimum reduzieren oder OpenGL direkt verwenden möchte. Das Raster Window Example und das OpenGL Window Example sind nützliche Referenzbeispiele für das Rendern in ein QWindow mit einem der beiden Ansätze.

Ressourcenverwaltung

Windows kann unter Umständen viel Speicherplatz benötigen. Ein übliches Maß ist Breite mal Höhe mal Farbtiefe. Ein Fenster kann auch mehrere Puffer enthalten, um doppelte und dreifache Pufferung zu unterstützen, sowie Tiefen- und Schablonenpuffer. Um die Speicherressourcen eines Fensters freizugeben, rufen Sie die Funktion destroy() auf.

Orientierung des Inhalts

QWindow verfügt über die Funktion reportContentOrientationChange(), die verwendet werden kann, um das Layout des Fensterinhalts in Bezug auf den Bildschirm festzulegen. Die Inhaltsausrichtung ist einfach ein Hinweis an das Fenstersystem, in welcher Ausrichtung sich der Fensterinhalt befindet. Sie ist nützlich, wenn Sie die gleiche Fenstergröße beibehalten wollen, aber den Inhalt stattdessen drehen wollen, insbesondere wenn Sie Rotationsanimationen zwischen verschiedenen Ausrichtungen durchführen. Das Fenstersystem kann diesen Wert verwenden, um das Layout von System-Popups oder Dialogen zu bestimmen.

Sichtbarkeit und Windowing System Exposure

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 unsichtbar zu machen, rufen Sie setVisible(false) oder hide() auf. Die Eigenschaft visible beschreibt den Zustand, in dem die Anwendung das Fenster haben möchte. Je nach zugrundeliegendem System kann ein sichtbares Fenster trotzdem nicht auf dem Bildschirm angezeigt werden. Es könnte z. B. von anderen undurchsichtigen Fenstern verdeckt oder aus dem physischen Bereich des Bildschirms herausgeschoben werden. Bei Windowing-Systemen, die über Exposure Notifications verfügen, beschreibt der Accessor 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, z. B. weil sich die Belichtung im Windowing-System ändert. Bei Windowing-Systemen, die diese Information für die Anwendung nicht sichtbar machen, gibt isExposed() einfach den gleichen Wert zurück wie isVisible().

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

Rendering

Es gibt zwei Qt-APIs, die verwendet werden können, um Inhalte in ein Fenster zu rendern: QBackingStore für das Rendern mit QPainter und das Flushen der Inhalte in ein Fenster vom Typ QSurface::RasterSurface und QOpenGLContext für das Rendern mit OpenGL in ein Fenster vom Typ QSurface::OpenGLSurface.

Die Anwendung kann mit dem Rendering beginnen, sobald isExposed() true zurückgibt, und kann das Rendering fortsetzen, bis isExposed() false zurückgibt. Um herauszufinden, wann isExposed() sich ändert, implementieren Sie exposeEvent() neu. Das Fenster wird immer ein Resize-Ereignis vor dem ersten Exposure-Ereignis erhalten.

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 ist, erlaubt das Plattformfenster dem Windowing-System, das Fenster zu positionieren. Unter X11 beispielsweise führt der Fenstermanager normalerweise eine Art intelligenter Positionierung durch, um zu vermeiden, dass neue Fenster bestehende Fenster vollständig verdecken. setGeometry () initialisiert jedoch sowohl die Position als auch die Größe. Wenn Sie also eine feste Größe, aber eine automatische Position wünschen, sollten Sie stattdessen resize() oder setWidth() und setHeight() aufrufen.

Dokumentation der Mitgliedstypen

enum QWindow::AncestorMode

Diese Aufzählung wird verwendet, um zu kontrollieren, ob vorübergehende Eltern als Vorfahren betrachtet werden sollen oder nicht.

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

enum QWindow::Visibility

Diese Aufzählung beschreibt, welchen Teil des Bildschirms das Fenster einnimmt oder einnehmen soll.

KonstanteWertBeschreibung
QWindow::Windowed2Das Fenster belegt einen Teil des Bildschirms, aber nicht unbedingt den gesamten Bildschirm. Dieser Zustand tritt nur bei Windowing-Systemen auf, die die gleichzeitige Anzeige mehrerer Fenster unterstützen. In diesem Zustand ist es dem Benutzer möglich, das Fenster manuell zu verschieben und in der Größe zu verändern, sofern die WindowFlags dies zulassen und das Windowing-System dies unterstützt.
QWindow::Minimized3Das Fenster wird 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 einen ganzen Bildschirm ein, und die Titelleiste ist weiterhin sichtbar. Bei den meisten Fenstersystemen ist dies der Zustand, der durch Klicken auf die Schaltfläche Maximieren in der Symbolleiste erreicht wird.
QWindow::FullScreen5Das Fenster nimmt einen ganzen Bildschirm ein, ist nicht in der Größe veränderbar und hat keine Titelleiste. Auf einigen Plattformen, die die gleichzeitige Anzeige mehrerer Fenster nicht unterstützen, kann dies die übliche Sichtbarkeit sein, wenn das Fenster nicht ausgeblendet ist.
QWindow::AutomaticVisibility1Dies bedeutet, dem Fenster einen sichtbaren Standardzustand zu geben, der je nach Plattform Vollbild oder Fenster sein kann. Er kann als Parameter an setVisibility übergeben werden, wird aber nie vom Visibility Accessor zurückgelesen.
QWindow::Hidden0Das Fenster ist in keiner Weise sichtbar, es kann sich jedoch an eine latente Sichtbarkeit erinnern, die durch Setzen von AutomaticVisibility wiederhergestellt werden kann.

Dokumentation der Eigenschaft

[read-only] active : const bool

Diese Eigenschaft enthält den aktiven Status des Fensters

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 für den Fall, dass er zusätzliche Inhalte wie Popups, Dialoge, Statusleisten oder ähnliches im Verhältnis zum Fenster anzeigen muss.

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

Die Differenz zwischen der Ausrichtung des Fensters und des Inhalts bestimmt, um wie viel der Inhalt gedreht werden soll. QScreen::angleBetween(), QScreen::transformBetween() und QScreen::mapBetween() können verwendet werden, um die notwendige Transformation zu 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 Fensterkennzeichen des Fensters

Die Fenster-Flags steuern das Aussehen des Fensters im Fenstersystem, ob es ein Dialog, ein Popup oder ein normales Fenster ist und ob es eine Titelleiste haben soll, usw.

Die tatsächlichen Fenster-Flags können sich von den mit setFlags() gesetzten Flags unterscheiden, wenn die angeforderten Flags nicht erfüllt werden konnten.

Zugriffsfunktionen:

Qt::WindowFlags flags() const
void setFlags(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)

Melder-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)

Melder-Signal:

void maximumHeightChanged(int arg)

maximumWidth : int

Diese Eigenschaft enthält die maximale Breite der Fenstergeometrie

Zugriffsfunktionen:

int maximumWidth() const
void setMaximumWidth(int w)

Melder-Signal:

void maximumWidthChanged(int arg)

minimumHeight : int

Diese Eigenschaft enthält die Mindesthöhe der Fenstergeometrie

Zugriffsfunktionen:

int minimumHeight() const
void setMinimumHeight(int h)

Melder-Signal:

void minimumHeightChanged(int arg)

minimumWidth : int

Diese Eigenschaft enthält die Mindestbreite der Fenstergeometrie

Zugriffsfunktionen:

int minimumWidth() const
void setMinimumWidth(int w)

Melder-Signal:

void minimumWidthChanged(int arg)

modality : Qt::WindowModality

Diese Eigenschaft enthält die Modalität des Fensters

Ein modales Fenster hindert andere Fenster daran, Eingabeereignisse zu 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 enthält die Deckkraft des Fensters im Fenstersystem.

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

Ein Wert von 1,0 oder mehr wird als vollständig undurchsichtig behandelt, während ein Wert von 0,0 oder weniger als vollständig transparent behandelt wird. Dazwischen liegende Werte repräsentieren verschiedene Stufen der Lichtdurchlässigkeit zwischen den beiden Extremen.

Der Standardwert ist 1.0.

Zugriffsfunktionen:

qreal opacity() const
void setOpacity(qreal level)

Melder-Signal:

void opacityChanged(qreal opacity)

title : QString

Diese Eigenschaft enthält den Titel des Fensters im Windowing-System

Der Fenstertitel kann im Titelbereich der Fensterdekorationen erscheinen, abhängig vom Fenstersystem und den Fensterflags. Er kann auch vom Fenstersystem verwendet werden, um das Fenster in anderen Kontexten zu identifizieren, z. B. im Task Switcher.

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, für das dieses Fenster ein transientes Pop-up ist.

Dies ist ein Hinweis für den Fenstermanager, dass dieses Fenster ein Dialog- oder Popup-Fenster im Namen des transienten Elternteils ist.

Damit das Fenster standardmäßig über seinem transienten parent zentriert wird, kann es je nach Fenstermanager auch notwendig sein, 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 enthält den Bildschirmbelegungsstatus des Fensters

Die Sichtbarkeit gibt an, ob das Fenster im Fenstersystem als normal, minimiert, maximiert, bildschirmfüllend oder versteckt erscheinen soll.

Die Sichtbarkeit auf AutomaticVisibility zu setzen bedeutet, dem Fenster einen sichtbaren Standardzustand zu geben, der je nach Plattform Vollbild oder Fenster sein kann. Wenn Sie die Sichtbarkeitseigenschaft lesen, erhalten Sie immer den aktuellen Zustand, niemals AutomaticVisibility.

Zugriffsfunktionen:

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

Benachrichtigungssignal:

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 Windowing-System.

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

Hinweis: Das Ausblenden eines Fensters entfernt das Fenster nicht aus dem Fenstersystem, es versteckt es nur. Auf Fenstersystemen, die Vollbildanwendungen einen eigenen Schreibtisch zuweisen (wie macOS), entfernt das Ausblenden eines Vollbildfensters diesen Schreibtisch nicht, sondern lässt ihn leer. Ein anderes Fenster der gleichen Anwendung wird möglicherweise im Vollbildmodus angezeigt und füllt diesen Schreibtisch aus. Verwenden Sie QWindow::close, um ein Fenster vollständig aus dem Fenstersystem zu entfernen.

Zugriffsfunktionen:

bool isVisible() const
void setVisible(bool visible)

Benachrichtigungssignal:

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)

Melder-Signal:

void widthChanged(int arg)

x : int

Diese Eigenschaft enthält die x-Position der Fenstergeometrie

Zugriffsfunktionen:

int x() const
void setX(int arg)

Melder-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)

Member Function Dokumentation

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

Erzeugt ein Fenster als oberste Ebene auf targetScreen.

Das Fenster wird erst angezeigt, wenn setVisible(true), show() o.ä. aufgerufen wird.

Siehe auch setScreen().

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

Erzeugt ein Fenster als Kind des angegebenen parent Fensters.

Das Fenster wird in das Elternfenster eingebettet, seine Koordinaten sind relativ zum Elternfenster.

Der Bildschirm wird vom Elternfenster geerbt.

Siehe auch setParent().

[virtual noexcept] QWindow::~QWindow()

Zerstört das Fenster.

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

Bewirkt, dass eine Warnung für msec Millisekunden angezeigt wird. Ist msec gleich 0 (Standardeinstellung), wird die Warnung auf unbestimmte Zeit angezeigt, bis das Fenster wieder aktiv wird. Diese Funktion hat keine Auswirkung auf ein aktives Fenster.

Im Alarmzustand zeigt das Fenster an, dass es Aufmerksamkeit verlangt, z. B. durch Blinken oder Wippen des Taskleisteneintrags.

QSize QWindow::baseSize() const

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

Siehe auch setBaseSize().

[slot] bool QWindow::close()

Schließen Sie das Fenster.

Dies schließt das Fenster, ruft effektiv destroy() auf und beendet möglicherweise die Anwendung. Gibt bei Erfolg true zurück, false, wenn es ein übergeordnetes Fenster hat (in diesem Fall sollte stattdessen das Fenster der obersten Ebene geschlossen werden).

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

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

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

Die Funktion wird aufgerufen, wenn das Fenster zum Schließen aufgefordert wird. Rufen Sie QEvent::ignore() für das Ereignis auf, wenn Sie verhindern wollen, dass das Fenster geschlossen wird.

Siehe auch close().

void QWindow::create()

Weist die mit dem Fenster verbundenen Plattformressourcen zu.

An diesem Punkt 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 normalerweise nicht notwendig 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 destroy() auf, um die Plattformressourcen freizugeben, falls erforderlich.

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 plattformeigenen Ressourcen 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 von dem Bildschirm ab, auf dem sich das Fenster befindet, und kann sich ändern, wenn das Fenster verschoben wird.

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

Hinweis: Für Fenster, die nicht von einem Plattformfenster unterstützt werden, d. h., dass create() nicht aufgerufen wurde, greift die Funktion auf das Pixelverhältnis des zugehörigen Geräts QScreen zurück.

Siehe auch QScreen::devicePixelRatio().

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

Reimplements: QObject::event(QEvent *e).

Überschreibt dies, um jedes Ereignis (ev) zu behandeln, das an das Fenster gesendet wird. Gibt 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 üblich abgewickelt werden.

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

Das Exposure-Ereignis (ev) wird vom Fenstersystem gesendet, wenn ein Fenster zwischen dem nicht exponierten und dem exponierten Zustand wechselt.

Ein exponiertes Fenster ist für den Benutzer potentiell sichtbar. Wenn das Fenster aus dem Bildschirm verschoben wird, von einem anderen Fenster völlig verdeckt wird, minimiert wird oder ähnliches, kann diese Funktion aufgerufen werden und der Wert von isExposed() kann sich auf false ändern. Sie können dieses Ereignis verwenden, um teure Operationen wie Animationen nur dann auszuführen, wenn das Fenster sichtbar ist.

Dieses Ereignis sollte nicht zum Malen verwendet werden. Um das Malen zu behandeln, 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

der Dateiname, den dieses Fenster darstellt.

Siehe auch setFilePath().

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

Überschreiben Sie dies, um Fokus-Ereignisse zu behandeln (ev).

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

Siehe auch focusOutEvent().

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

Gibt die QObject zurück, die der endgültige Empfänger von Ereignissen ist, die den Fokus binden, wie z. B. Tastenereignisse.

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

Dieses Signal wird ausgegeben, wenn der Endverbraucher von Ereignissen, die an den Fokus gebunden sind, auf object geändert wird.

Siehe auch focusObject().

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

Überschreiben Sie diese Funktion, um Ereignisse zu behandeln, die den Fokus verlieren (ev).

Fokus-Out-Ereignisse werden gesendet, wenn das Fenster den Tastaturfokus verliert.

Siehe auch focusInEvent().

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

Reimplements: QSurface::format() const.

Gibt das aktuelle Format dieses Fensters zurück.

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

Hinweis: Je nach Plattform können bestimmte Werte in diesem Oberflächenformat noch die angeforderten Werte enthalten, d. h. die Werte, die an setFormat() übergeben wurden. Typische Beispiele sind die OpenGL-Version, das Profil und die Optionen. Diese können während create() nicht aktualisiert werden, da sie kontextspezifisch sind und ein einzelnes Fenster während seiner Lebensdauer in mehreren Kontexten verwendet werden kann. Verwenden Sie stattdessen QOpenGLContext's format(), um solche Werte abzufragen.

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

QRect QWindow::frameGeometry() const

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

Die Geometrie steht in Relation zur virtualGeometry() des Bildschirms.

Siehe auch geometry() und frameMargins().

QMargins QWindow::frameMargins() const

Liefert die Ränder des Fensterrahmens, die das Fenster umgeben.

Siehe auch geometry() und frameGeometry().

QPoint QWindow::framePosition() const

Liefert die obere linke Position des Fensters, einschließlich seines Fensterrahmens.

Dies gibt den gleichen Wert zurück wie frameGeometry().topLeft().

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

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

Erzeugt eine lokale Repräsentation eines Fensters, das von einem anderen Prozess oder durch die Verwendung nativer Bibliotheken unterhalb von Qt erstellt wurde.

Mit dem Handle id zu einem nativen Fenster erzeugt diese Methode ein QWindow Objekt, das verwendet werden kann, um das Fenster beim Aufruf von Methoden wie setParent() und setTransientParent() zu repräsentieren.

Dies kann auf Plattformen, die dies unterstützen, dazu verwendet werden, ein QWindow in ein eigenes Fenster einzubetten oder ein eigenes 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 verwendet werden, um das zugrundeliegende native Fenster zu manipulieren (abgesehen vom Reparenting) oder um Zustandsänderungen des nativen Fensters zu beobachten. Jede 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, ohne seinen Fensterrahmen.

Die Geometrie bezieht sich auf die virtualGeometry() des 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 Ausblendungsereignisse zu behandeln (ev).

Die Funktion wird aufgerufen, wenn das Fenster das Ausblenden im Fenstersystem beantragt hat.

QIcon QWindow::icon() const

Liefert das Symbol des Fensters im Windowing-System

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 der gleichen übergeordneten / transienten übergeordneten Kette wie das Fokusfenster befinden.

Normalerweise sollten aktive Fenster aus der Perspektive des Stils aktiv erscheinen.

Um das Fenster zu erhalten, das gerade 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 Vorfahre des angegebenen child ist. Wenn mode gleich IncludeTransients ist, dann werden auch vorübergehende Eltern als Vorfahren betrachtet.

bool QWindow::isExposed() const

Gibt zurück, ob dieses Fenster im Fenstersystem angezeigt wird.

Wenn das Fenster nicht exponiert ist, wird es von der Anwendung angezeigt, aber es ist immer noch nicht im Windowing-System zu sehen, so dass die Anwendung Animationen und andere grafische Aktivitäten minimieren sollte.

Jedes Mal, wenn sich dieser Wert ändert, wird eine exposeEvent() gesendet.

Siehe auch exposeEvent().

bool QWindow::isModal() const

Gibt zurück, ob das Fenster modal ist.

Ein modales Fenster verhindert, dass andere Fenster irgendwelche Eingaben erhalten.

Siehe auch QWindow::modality.

bool QWindow::isTopLevel() const

Gibt zurück, ob das Fenster übergeordnet ist, d. h. kein übergeordnetes Fenster hat.

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

Überschreiben Sie dies, um Tastendruckereignisse zu behandeln (ev).

Siehe auch keyReleaseEvent().

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

Überschreiben Sie diese Funktion, um Ereignisse der Tastenfreigabe zu behandeln (ev).

Siehe auch keyPressEvent().

[slot] void QWindow::lower()

Das Fenster im Fenstersystem absenken.

Verlangt, dass das Fenster so abgesenkt wird, dass es unter anderen Fenstern erscheint.

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

Übersetzt 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

Übersetzt die Fensterkoordinate pos in globale Bildschirmkoordinaten. Zum Beispiel würde mapToGlobal(QPointF(0,0)) die globalen Koordinaten des oberen linken Pixels 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 Windowing-System, dass die Anwendung keine Maus- oder Berührungseingaben 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 Mindestgröße des Fensters zurück.

Siehe auch setMinimumSize().

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

Dieses Signal wird ausgegeben, wenn die Eigenschaft Qwindow::modality auf modality wechselt.

Hinweis: Benachrichtigungssignal für die Eigenschaft modality.

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

Überschreiben Sie dies, um Maus-Doppelklick-Ereignisse zu behandeln (ev).

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

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

Überschreiben Sie dies, um Mausbewegungsereignisse zu behandeln (ev).

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

Überschreiben Sie dies, um Mausdruckereignisse zu behandeln (ev).

Siehe auch mouseReleaseEvent().

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

Überschreiben Sie dies, um Mausfreigabeereignisse zu behandeln (ev).

Siehe auch mousePressEvent().

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

Überschreiben Sie dies, um Fensterbewegungsereignisse zu behandeln (ev).

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

Überschreiben Sie dies, um plattformabhängige Ereignisse zu behandeln. Sie erhalten eventType, message und result.

Dies könnte Ihre Anwendung nicht portabel machen.

Sollte nur true zurückgeben, wenn das Ereignis behandelt wurde.

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

Das Malereignis (ev) wird vom Fenstersystem immer dann gesendet, wenn ein Bereich des Fensters neu gezeichnet werden muss, z. B. beim erstmaligen Anzeigen des Fensters oder wenn Teile des Fensters durch das Verschieben eines anderen Fensters freigelegt wurden.

Von der Anwendung wird erwartet, dass sie als Reaktion auf das Malereignis in das Fenster rendert, unabhängig vom Zustand des Fensters. Beispielsweise kann ein paint-Ereignis gesendet werden, bevor das Fenster freigelegt wird, um es für die Anzeige für den 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, falls vorhanden.

Wenn mode IncludeTransients ist, wird das transiente übergeordnete Fenster zurückgegeben, wenn es kein übergeordnetes Fenster gibt.

Ein Fenster ohne Elternteil wird als übergeordnetes Fenster bezeichnet.

Siehe auch setParent().

QPoint QWindow::position() const

Gibt die Position des Fensters auf dem Desktop zurück, ohne Berücksichtigung eines Fensterrahmens

Hinweis: Nicht alle Windowing-Systeme unterstützen das Setzen oder Abfragen von Fensterpositionen auf oberster Ebene. Auf einem solchen System hat das programmatische Verschieben von Fenstern möglicherweise keinen Effekt, und es können künstliche Werte für die aktuellen Positionen zurückgegeben werden, wie z. B. QPoint(0, 0).

Siehe auch setPosition().

[slot] void QWindow::raise()

Hebt das Fenster im Fenstersystem an.

Verlangt, dass das Fenster angehoben wird, damit es über anderen Fenstern erscheint.

[slot] void QWindow::requestActivate()

Fordert das Fenster auf, aktiviert zu werden, d. h. den Tastaturfokus zu erhalten.

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

[slot] void QWindow::requestUpdate()

Plant ein QEvent::UpdateRequest -Ereignis, das an dieses Fenster übermittelt wird.

Das Ereignis wird auf Plattformen, auf denen dies möglich ist, synchron mit der Anzeige vsync zugestellt. Andernfalls wird das Ereignis mit einer Verzögerung von höchstens 5 ms ausgelöst. Wenn der zugehörige Bildschirm des Fensters eine refresh rate von mehr als 60 Hz meldet, wird das Intervall auf einen Wert kleiner als 5 herabgesenkt. Die zusätzliche Zeit dient dazu, der Ereignisschleife ein wenig Leerlaufzeit zum Sammeln von Systemereignissen zu geben, und kann mit der Umgebungsvariablen QT_QPA_UPDATE_IDLE_TIME überschrieben werden.

Bei der Steuerung von Animationen sollte diese Funktion einmal aufgerufen werden, nachdem das Zeichnen abgeschlossen ist. Ein mehrfacher Aufruf dieser Funktion führt dazu, dass ein einziges Ereignis an das Fenster geliefert wird.

Unterklassen von QWindow sollten event() neu implementieren, das Ereignis abfangen und den Rendering-Code der Anwendung aufrufen, dann die Implementierung der Basisklasse aufrufen.

Hinweis: Die Reimplementierung von event() durch die Unterklasse muss die Implementierung der Basisklasse aufrufen, es sei denn, sie ist absolut sicher, dass das Ereignis nicht von der Basisklasse behandelt werden muss. Die Standardimplementierung dieser Funktion stützt sich zum Beispiel auf QEvent::Timer Ereignisse. Das Wegfiltern dieser Ereignisse würde daher die Zustellung 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 wird, weicht das angeforderteFormat vom tatsächlichen Fensterformat ab.

Dies ist der mit setFormat() gesetzte Wert.

Siehe auch setFormat() und format().

void QWindow::resize(const QSize &newSize)

setzen Sie die Größe des Fensters, ohne Berücksichtigung des Fensterrahmens, auf newSize

Siehe auch size() und geometry().

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

setzt die Größe des Fensters, ohne Berücksichtigung des Fensterrahmens, auf eine QSize, die aus Breite w und Höhe h

Zur interaktiven Größenänderung von Fenstern siehe startSystemResize().

Siehe auch size() und geometry().

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

Überschreiben Sie dies, um Größenänderungsereignisse zu behandeln (ev).

Das Resize-Ereignis wird immer dann aufgerufen, wenn die Größe des Fensters im Fenstersystem geändert wird, entweder direkt durch das Fenstersystem, das eine setGeometry() oder resize()-Anforderung bestätigt, oder indirekt durch den Benutzer, der die Größe des Fensters manuell ändert.

QScreen *QWindow::screen() const

Gibt den Bildschirm zurück, auf dem das Fenster angezeigt wird, oder null, wenn es keinen gibt.

Bei untergeordneten Fenstern wird der Bildschirm des entsprechenden Fensters der obersten Ebene zurückgegeben.

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

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

Dieses Signal wird ausgegeben, wenn sich der screen eines Fensters ändert, entweder durch explizites Setzen mit setScreen(), oder automatisch, wenn der Bildschirm des Fensters entfernt wird.

void QWindow::setBaseSize(const QSize &size)

Legt die Basisgröße size des Fensters fest.

Die Basisgröße wird zur Berechnung der richtigen Fenstergröße verwendet, wenn das Fenster sizeIncrement() definiert.

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

void QWindow::setCursor(const QCursor &cursor)

die Form des Cursors für dieses Fenster festlegen

Die Maus cursor nimmt diese Form an, wenn sie sich über diesem Fenster befindet, es sei denn, es ist ein Override-Cursor eingestellt. Siehe list of predefined cursor objects für eine Reihe von nützlichen Formen.

Wenn kein Cursor gesetzt wurde, oder nach einem Aufruf von unsetCursor(), wird der Cursor des Elternfensters verwendet.

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

Einige zugrundeliegende Fensterimplementierungen setzen den Cursor zurück, wenn er ein Fenster verlässt, auch wenn die Maus gegriffen wird. Wenn Sie einen Cursor für alle Fenster setzen wollen, auch wenn er außerhalb des Fensters ist, sollten Sie QGuiApplication::setOverrideCursor() in Betracht ziehen.

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

void QWindow::setFilePath(const QString &filePath)

den Dateinamen festlegen, den dieses Fenster darstellt.

Das Fenstersystem kann filePath verwenden, 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 Fensterflag flag für dieses Fenster, wenn on wahr ist; andernfalls wird das Flag gelöscht.

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

void QWindow::setFormat(const QSurfaceFormat &format)

Legt die Oberfläche des Fensters format fest.

Das Format bestimmt Eigenschaften wie Farbtiefe, Alpha, Tiefe und Schablonenpuffergröße usw. Zum Beispiel, um einem Fenster einen transparenten Hintergrund zu geben (vorausgesetzt, das Fenstersystem unterstützt Compositing, und vorausgesetzt, 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, nachdem create() aufgerufen wurde, löst das Oberflächenformat der nativen Oberfläche nicht erneut auf.

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 die einzelnen Aufrufe dieser Funktion durch einen einzigen Aufruf von QSurfaceFormat::setDefaultFormat() ersetzt werden können, bevor das erste Fenster erzeugt wird.

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

void QWindow::setFramePosition(const QPoint &point)

Setzt die obere linke Position des Fensters (point) einschließlich seines Fensterrahmens.

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

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

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

Setzt die Geometrie des Fensters mit Ausnahme seines Fensterrahmens auf rect.

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

Siehe auch geometry().

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

Setzt die Geometrie des Fensters, mit Ausnahme seines Fensterrahmens, auf ein Rechteck, das aus posx, posy, w und h konstruiert wird.

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

Siehe auch geometry().

void QWindow::setIcon(const QIcon &icon)

Legt das icon des Fensters im Fenstersystem fest.

Das Fenstersymbol kann vom Fenstersystem z. B. zur Dekoration des Fensters und/oder in der Aufgabenumschaltung verwendet werden.

Hinweis: Unter macOS ist das Symbol in der Titelleiste des Fensters für Fenster gedacht, 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 Keyboard-Grab aktiviert werden soll oder nicht (grab).

Wenn der Rückgabewert true ist, erhält das Fenster alle Tastenereignisse, bis setKeyboardGrabEnabled(false) aufgerufen wird; andere Fenster erhalten überhaupt keine Tastenereignisse. Mausereignisse sind nicht betroffen. Verwenden Sie setMouseGrabEnabled(), wenn Sie diese abfangen wollen.

Siehe auch setMouseGrabEnabled().

void QWindow::setMask(const QRegion &region)

Setzt die Maske des Fensters.

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

Der Fenstermanager kann entscheiden, ob er die Bereiche des Fensters, die nicht in der Maske enthalten sind, anzeigen will 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 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 unter die angegebene size zu verhindern.

Siehe auch setMaximumSize() und minimumSize().

bool QWindow::setMouseGrabEnabled(bool grab)

Legt fest, ob Mousegrab aktiviert werden soll oder nicht (grab).

Wenn der Rückgabewert true ist, erhält das Fenster alle Mausereignisse, bis setMouseGrabEnabled(false) aufgerufen wird; andere Fenster erhalten überhaupt keine Mausereignisse. Tastaturereignisse sind nicht betroffen. Verwenden Sie setKeyboardGrabEnabled(), wenn Sie diese abfangen wollen.

Siehe auch setKeyboardGrabEnabled().

void QWindow::setParent(QWindow *parent)

Setzt das parent Fenster. Dies führt dazu, dass das Fenstersystem den Ausschnitt des Fensters verwaltet, so dass es an das Fenster parent angehängt wird.

Wenn parent auf nullptr gesetzt wird, wird das Fenster zu einem Fenster der obersten Ebene.

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

Siehe auch parent().

void QWindow::setPosition(const QPoint &pt)

setzt die Position des Fensters auf dem Desktop auf pt

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

Für das interaktive Verschieben von Fenstern, siehe startSystemMove(). Für die interaktive Größenänderung von Fenstern, siehe startSystemResize().

Hinweis: Nicht alle Windowing-Systeme unterstützen das Setzen oder Abfragen von Fensterpositionen auf oberster Ebene. Auf einem solchen System hat das programmatische Verschieben von Fenstern möglicherweise keinen Effekt, und es werden möglicherweise künstliche Werte für die aktuellen Positionen zurückgegeben, wie z. B. QPoint(0, 0).

Siehe auch position() und startSystemMove().

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

setzt die Position des Fensters auf dem Desktop auf posx, posy

Die Position bezieht sich auf die virtualGeometry() des 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 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 platzieren, verwenden Sie die topLeft()-Position 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 Größenerhöhung (size) des Fensters fest.

Wenn der Benutzer die Größe des Fensters ändert, wird die Größe in Schritten von sizeIncrement().width() Pixeln horizontal und sizeIncrement().height() Pixeln vertikal verschoben, mit baseSize() als Basis.

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

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

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 das Raster-Rendering mit QBackingStore oder das OpenGL-Rendering mit QOpenGLContext gedacht ist.

Die surfaceType wird verwendet, wenn die native Oberfläche mit der Funktion create() erstellt wird. Der Aufruf dieser Funktion, nachdem die native Oberfläche erstellt wurde, erfordert den Aufruf von destroy() und create(), 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)

Verknüpft dieses Fenster mit dem angegebenen Vulkan instance.

instance muss so lange gültig bleiben, wie diese QWindow Instanz existiert.

Siehe auch vulkanInstance().

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

den Bildschirmbelegungsstatus des Fensters festlegen

Das Fenster state gibt an, ob das Fenster im Fenstersystem als maximiert, minimiert, bildschirmfüllend oder normal erscheint.

Der Enum-Wert Qt::WindowActive ist kein akzeptierter Parameter.

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

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

den Bildschirmbelegungsstatus des Fensters festlegen

Das Fenster state zeigt an, ob das Fenster im Fenstersystem als maximiert, minimiert und/oder bildschirmfüllend erscheint.

Das Fenster kann sich in einer Kombination aus mehreren Zuständen befinden. Wenn das Fenster beispielsweise sowohl minimiert als auch maximiert ist, erscheint das Fenster minimiert, aber ein Klick auf den Eintrag in der Taskleiste bringt es wieder in den maximierten Zustand.

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 ist dies gleichbedeutend mit dem Aufruf von showNormal(). Andernfalls ist es gleichbedeutend mit 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 behandeln (ev).

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

Wenn das Fenster erfolgreich vom Fenstersystem angezeigt wird, folgen ein Resize- und ein Expose-Ereignis.

[slot] void QWindow::showFullScreen()

Zeigt das Fenster im Vollbildmodus an.

Entspricht dem Aufruf von setWindowStates(Qt::WindowFullScreen) und dann setVisible(true).

Siehe die Dokumentation QWidget::showFullScreen() für plattformspezifische Überlegungen und Einschränkungen.

Siehe auch setWindowStates() und setVisible().

[slot] void QWindow::showMaximized()

Zeigt das Fenster in maximierter Form an.

Entspricht dem Aufruf von setWindowStates(Qt::WindowMaximized) und dann setVisible(true).

Siehe auch setWindowStates() und setVisible().

[slot] void QWindow::showMinimized()

Zeigt das Fenster als minimiert an.

Entspricht dem Aufruf von setWindowStates(Qt::WindowMinimized) und dann setVisible(true).

Siehe auch setWindowStates() und setVisible().

[slot] void QWindow::showNormal()

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

Entspricht dem Aufruf von setWindowStates(Qt::WindowNoState) und dann setVisible(true).

Siehe auch setWindowStates() und setVisible().

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

Reimplements: QSurface::size() const.

Liefert die Größe des Fensters ohne Berücksichtigung eines Fensterrahmens.

Siehe auch resize().

QSize QWindow::sizeIncrement() const

Gibt das Größeninkrement des Fensters zurück.

Siehe auch setSizeIncrement().

[slot] bool QWindow::startSystemMove()

Start einer systemspezifischen Verschiebeoperation

Der Aufruf dieses Befehls startet einen interaktiven Verschiebevorgang für das Fenster auf Plattformen, die dies unterstützen. Das tatsächliche Verhalten kann je nach Plattform variieren. Normalerweise wird das Fenster dem Mauszeiger folgen, 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 nativeres Aussehen und Verhalten beim Verschieben von Fenstern ermöglicht, z. B. das Einrasten des Fenstermanagers an anderen Fenstern oder ein spezielles Kachel- oder Größenänderungsverhalten mit Animationen, wenn das Fenster an den Rand des Bildschirms gezogen wird. Außerdem wird auf einigen Plattformen wie Wayland setPosition nicht unterstützt, so dass 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)

Start einer systemspezifischen Größenänderung

Ein Aufruf dieser Funktion startet eine interaktive Größenänderung des Fensters auf Plattformen, die dies unterstützen. Das tatsächliche Verhalten kann je nach Plattform variieren. Normalerweise wird die Größe des Fensters so angepasst, dass der Rand dem Mauszeiger folgt.

Auf Plattformen, die dies unterstützen, wird diese Methode der Größenänderung von Fenstern gegenüber setGeometry bevorzugt, da sie ein nativeres Aussehen und Gefühl bei der Größenänderung von Fenstern ermöglicht, z. B. das Einrasten des Fenstermanagers an anderen Fenstern oder ein spezielles Größenänderungsverhalten mit Animationen, wenn das Fenster an den Rand des Bildschirms gezogen wird.

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

Gibt true zurück, wenn die Operation vom System unterstützt wurde.

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

Reimplements: QSurface::surfaceType() const.

Gibt den Oberflächentyp des Fensters zurück.

Siehe auch setSurfaceType().

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

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

Proximity-Eintritts- und Austrittsereignisse werden nicht an Fenster gesendet, sondern an die Anwendungsinstanz.

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

Überschreiben Sie dies, um Berührungsereignisse zu behandeln (ev).

Qt::WindowType QWindow::type() const

Gibt den Typ des Fensters zurück.

Dies gibt den Teil der Fensterkennzeichen zurück, der angibt, ob es sich um ein Dialogfenster, ein Tooltip-Fenster, 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, falls eine gesetzt wurde, ansonsten nullptr.

Siehe auch setVulkanInstance().

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

Überschreiben Sie dies, um Mausrad- oder andere Rad-Ereignisse zu behandeln (ev).

WId QWindow::winId() const

Gibt die Plattform-ID des Fensters zurück.

Hinweis: Diese Funktion bewirkt, dass das Plattformfenster erstellt wird, wenn es noch nicht vorhanden ist. Gibt 0 zurück, wenn die Erstellung des Plattformfensters fehlgeschlagen ist.

Für Plattformen, bei denen diese ID nützlich sein könnte, wird der zurückgegebene Wert das Fenster innerhalb des entsprechenden Bildschirms eindeutig repräsentieren.

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 ausgegeben, wenn sich die windowState ändert, entweder durch explizites Setzen 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

den Zustand des Fensters, in dem es den Bildschirm belegt

Das Fenster kann sich in einer Kombination aus mehreren Zuständen befinden. Wenn das Fenster z. B. sowohl minimiert als auch maximiert ist, erscheint es minimiert, aber wenn Sie auf den Eintrag in der Taskleiste klicken, wird es wieder in den maximierten Zustand versetzt.

Siehe auch setWindowStates().

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