Qt / C ++ - закрытие двух виджетов, когда один закрыт

0

У меня есть главное окно, которое создает два виджета: "главное окно" с меню и основным приложением и виджет, который предоставляет различные настройки в своем собственном окне, отключенные от основного приложения.

Есть ли событие в Qt, так что я могу заставить виджет настроек закрыть, если я закрываю/скрываю/X из главного окна приложения?

  • 0
    Почему бы не сделать виджет с настройками дочерним по отношению к главному окну?
  • 0
    Чего ты хочешь: закрытие мероприятия не может сделать?
Теги:
qt

2 ответа

2
Лучший ответ

Ты можешь:

1- сделать виджет настроек дочерним по отношению к главному окну

2- использует фильтр событий для обнаружения события закрытия основного окна (см. QObject::installEventFilter() и QCloseEvent)

3- Заменить closeEvent в главном окне

  • 0
    Я добавил mywidget->close() в MainWindow::closeEvent() . Спасибо!
1

Главное окно имеет функцию closeEvent, которую вы можете переопределить, чтобы закрыть другое окно:

void MainWindow::closeEvent(QCloseEvent *event)
{
    otherWindow->close();
    QMainWindow::closeEvent(event);
}
  • 0
    Это то, что я сделал. спасибо за код, я бы забыл вызвать QMainWindow::closeEvent()

Ещё вопросы

Сообщество Overcoder
Наверх
Меню