Russian Qt Forum

Qt => Общие вопросы => Тема начата: Evgeniya от Август 25, 2009, 10:47



Название: как отловить сигнал закрытия дочерней формы в классе главной форме???
Отправлено: Evgeniya от Август 25, 2009, 10:47
Добрый день!!!
У меня есть две формы унаследованные от QMainWindow. И одна вызывается из другой. Я хочу, чтобы при закрытии дочерней формы данные в главной форме обновлялись..только вот как отловить сигнал закрытия дочерней формы в классе главной форме???


Название: Re: как отловить сигнал закрытия дочерней формы в классе главной форме???
Отправлено: BRE от Август 25, 2009, 10:51
Добрый день!!!
У меня есть две формы унаследованные от QMainWindow. И одна вызывается из другой. Я хочу, чтобы при закрытии дочерней формы данные в главной форме обновлялись..только вот как отловить сигнал закрытия дочерней формы в классе главной форме???
1. Можно "попросить" дочернюю форму посылать сигнал о своем закрытии и его соединить со слотом обновления главной формы.
2. Установить eventFilter в главном окне и ловить все события дочернего.


Название: Re: как отловить сигнал закрытия дочерней формы в классе главной форме???
Отправлено: Igors от Август 25, 2009, 13:38
У меня есть две формы унаследованные от QMainWindow. И одна вызывается из другой. Я хочу, чтобы при закрытии дочерней формы данные в главной форме обновлялись..только вот как отловить сигнал закрытия дочерней формы в классе главной форме???
Если обе от QMainWindow (т.е. пользователь может переключаться между ними) то еще много чего прийдется ловить. Например, пользователь может опять открыть дочернюю (а она уже открыта) и.т.п. "Обновить при закрытии" явный намек на то, что дочерняя форма должна быть модальной, т.е. от QDialog и вызываться exec(). Тогда и ловить ничего не надо и данные передать легко.