QCloseEvent Class

QCloseEvent 클래스에는 닫기 이벤트를 설명하는 매개 변수가 포함되어 있습니다. 더 보기...

Header: #include <QCloseEvent>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui
상속합니다: QEvent

공용 함수

자세한 설명

닫기 이벤트는 일반적으로 사용자가 창 메뉴에서 "닫기"를 선택하거나 X 제목 표시줄 버튼을 클릭하여 닫으려는 위젯으로 전송됩니다. 또한 QWidget::close()를 호출하여 위젯을 프로그래밍 방식으로 닫을 때도 전송됩니다.

닫기 이벤트에는 수신자가 위젯을 닫을지 여부를 나타내는 플래그가 포함됩니다. 위젯이 닫기 이벤트를 수락하면 위젯이 숨겨집니다( Qt::WA_DeleteOnClose 플래그를 사용하여 만든 경우 삭제됩니다). 닫기 이벤트 수락을 거부하면 아무 일도 일어나지 않습니다. (X11에서는 창 관리자가 강제로 창을 닫을 수도 있지만, 이 글을 쓰는 시점에서는 이 작업을 수행하는 창 관리자를 알지 못합니다).

이벤트 핸들러 QWidget::closeEvent()는 닫기 이벤트를 수신합니다. 이 이벤트 핸들러의 기본 구현은 닫기 이벤트를 수락합니다. 위젯을 숨기고 싶지 않거나 특별한 처리를 원한다면 이벤트 핸들러를 다시 구현하고 ignore() 이벤트를 처리해야 합니다.

위젯이 닫힐 때 삭제되도록 하려면 Qt::WA_DeleteOnClose 플래그를 사용하여 위젯을 만듭니다. 이는 다중 창 애플리케이션에서 독립적인 최상위 창에 매우 유용합니다.

QObject는 삭제될 때 destroyed() 신호를 전송합니다.

마지막 최상위 창이 닫히면 QGuiApplication::lastWindowClosed() 신호가 전송됩니다.

isAccepted() 함수는 이벤트 수신자가 위젯을 닫는 데 동의한 경우 true 을 반환하고, 위젯을 닫는 데 동의하지 않으면 accept()을 호출하고 이 이벤트의 수신자가 위젯을 닫지 않으려면 ignore()을 호출합니다.

QWidget::close(), QWidget::hide(), QObject::destroyed(), QCoreApplication::exec(), QCoreApplication::quit(), QGuiApplication::lastWindowClosed()도 참조하세요 .

멤버 함수 문서

QCloseEvent::QCloseEvent()

닫기 이벤트 객체를 구축합니다.

accept()도 참조하세요 .

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