Spec-Zone.ru › Qt 5.13

Класс QCloseEvent

Класс QCloseEvent содержит параметры, описывающие событие закрытия. Подробнее...

Заголовок: #include <QCloseEvent>
qmake: QT += gui
Наследует: QEvent
  • Список всех членов, включая наследуемые

Открытые функции

QCloseEvent()

Подробное описание

События закрытия отправляются виджетам, которые пользователь хочет закрыть, обычно выбирая «Закрыть» из меню окна или нажав кнопку X на панели заголовка. Они также отправляются, когда вы вызываете QWidget::close() для закрытия виджета программно.

События закрытия содержат флаг, указывающий, хочет ли получатель закрыть виджет или нет. Когда виджет принимает событие закрытия, он скрывается (и уничтожается, если он был создан с флагом Qt::WA_DeleteOnClose). Если он отказывается принять событие закрытия, ничего не происходит. (В X11 возможно, что диспетчер окон принудительно закроет окно; но на момент написания нам не известно ни об одном диспетчере окон, который делает это.)

Обработчик событий QWidget::closeEvent() получает события закрытия. По умолчанию этот обработчик событий принимает событие закрытия. Если вы не хотите, чтобы ваш виджет скрывался, или хотите выполнить некоторую специальную обработку, вы должны переопределить обработчик событий и вызвать ignore() для события.

Обработчик closeEvent() в примере приложения демонстрирует обработчик события закрытия, который спрашивает, нужно ли сохранить документ перед закрытием.

Если вы хотите, чтобы виджет удалялся при закрытии, создайте его с флагом Qt::WA_DeleteOnClose. Это очень полезно для независимых окон верхнего уровня в приложении с несколькими окнами.

QObjects посылают сигнал destroyed(), когда они удаляются.

Если закрывается последнее окно верхнего уровня, генерируется сигнал QGuiApplication::lastWindowClosed().

Функция isAccepted() возвращает true, если получатель события согласился закрыть виджет; вызовите accept(), чтобы согласиться закрыть виджет, и вызовите ignore(), если получатель этого события не хочет, чтобы виджет закрывался.

См. также QWidget::close(), QWidget::hide(), QObject::destroyed(), QCoreApplication::exec(), QCoreApplication::quit() и QGuiApplication::lastWindowClosed().

Документация по членам функций

QCloseEvent::QCloseEvent()

Конструктор объекта события закрытия.

См. также accept().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qcloseevent.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API