Auf dieser Seite

QCloseEvent Class

Die Klasse „QCloseEvent“ enthält Parameter, die ein Schließereignis beschreiben. Mehr...

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

Öffentliche Funktionen

Geschützte Funktionen

QCloseEvent(QCloseEvent &&)
QCloseEvent &operator=(QCloseEvent &&)
QCloseEvent &operator=(const QCloseEvent &other)

Ausführliche Beschreibung

Schließereignisse werden an Widgets gesendet, die der Benutzer schließen möchte, in der Regel durch Auswahl von „Schließen“ im Fenstermenü oder durch Klicken auf die Schaltfläche „ X “ in der Titelleiste. Sie werden auch gesendet, wenn Sie ` QWidget::close()` aufrufen, um ein Widget programmgesteuert zu schließen.

Schließen-Ereignisse enthalten ein Flag, das angibt, ob der Empfänger das Schließen des Widgets wünscht oder nicht. Wenn ein Widget das Schließen-Ereignis akzeptiert, wird es ausgeblendet (und zerstört, falls es mit dem Flag „ Qt::WA_DeleteOnClose “ erstellt wurde). Lehnt es das Schließen-Ereignis ab, geschieht nichts. (Unter X11 ist es möglich, dass der Fenstermanager das Fenster zwangsweise schließt; zum Zeitpunkt der Erstellung dieses Dokuments ist uns jedoch kein Fenstermanager bekannt, der dies tut.)

Der Ereignis-Handler ` QWidget::closeEvent()` empfängt Schließen-Ereignisse. Die Standardimplementierung dieses Ereignis-Handlers akzeptiert das Schließen-Ereignis. Wenn Sie nicht möchten, dass Ihr Widget ausgeblendet wird, oder eine spezielle Behandlung wünschen, sollten Sie den Ereignis-Handler neu implementieren und das Ereignis mit ` ignore()` ablehnen.

Wenn das Widget beim Schließen gelöscht werden soll, erstellen Sie es mit dem Flag „ Qt::WA_DeleteOnClose “. Dies ist besonders nützlich für eigenständige Top-Level-Fenster in einer Multi-Fenster-Anwendung.

QObjects geben das Signal „ destroyed()“ ab, wenn sie gelöscht werden.

Wird das letzte Top-Level-Fenster geschlossen, wird das Signal „ QGuiApplication::lastWindowClosed()“ ausgesendet.

Die Funktion ` isAccepted()` gibt ` true ` zurück, wenn der Empfänger des Ereignisses dem Schließen des Widgets zugestimmt hat; rufen Sie ` accept()` auf, um dem Schließen des Widgets zuzustimmen, und rufen Sie ` ignore()` auf, wenn der Empfänger dieses Ereignisses nicht möchte, dass das Widget geschlossen wird.

Siehe auch „ QWidget::close()“, „ QWidget::hide()“, „ QObject::destroyed()“, „ QCoreApplication::exec()“, „ QCoreApplication::quit()“ und „ QGuiApplication::lastWindowClosed()“.

Dokumentation zu Mitgliedsfunktionen

QCloseEvent::QCloseEvent()

Erstellt ein „close“-Ereignisobjekt.

Siehe auch ` accept()`.

[protected delete] QCloseEvent::QCloseEvent(QCloseEvent &&)

Erstellt eine Instanz von ` QCloseEvent`. Diese Funktion wurde gelöscht.

[protected delete] QCloseEvent &QCloseEvent::operator=(QCloseEvent &&)

Weist „ other “ dieser „ QCloseEvent “-Instanz zu. Diese Funktion wird gelöscht.

[noexcept protected default] QCloseEvent &QCloseEvent::operator=(const QCloseEvent &other)

Weist dieser „ QCloseEvent “-Instanz „ other “ zu.

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