![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как лучше закрыть несколко одинаковых форм? [D7, WinXP]
Дмитрий Белькевич © (2009-06-04 14:00:00)Есть некоторое количество одинаковых форм. Они могут быть на одном мониторе, либо на нескольких. Быть как MDI, так и SDI. При закрытии одной из них нужно по некоторому критерию (формы 'связаны' через специальный идентификатор) закрывать некоторые другие с таким же идентификатором.
Как такое лучше орагинизовать?
Дмитрий Белькевич (2009-06-04 15:39:00) [21]
> если в OnDestroy и посылать через PostMessage - ничего страшного,
> деструктор выполнится до того, как будет выбрано сообщение
Я еще и разрушение объекта вызываю до посылки сообщения, что бы форма сама себе мессагу не прислала... Параноя ;) Смысла, наверно, немного - всё равно очередь будет уже убита.
Медвежонок Пятачок (2009-06-04 15:11:00) [22]И все другие при закрытии будут тоже сообщение посылать - закрой все такие же...
Если юзер успеет нажать в них кнопку "закрыть все такие" после того, как он нажал ее же в активной форме
Игорь Шевченко (2009-06-04 15:05:00) [23]
> И все другие при закрытии будут тоже сообщение посылать
> - закрой все такие же...
если в OnDestroy и посылать через PostMessage - ничего страшного, деструктор выполнится до того, как будет выбрано сообщение
Дмитрий Белькевич (2009-06-04 15:01:00) [24]
> Я бы отправлял сообщение главной форме - закрой все такие
> же.
И все другие при закрытии будут тоже сообщение посылать - закрой все такие же...
> Такое можно сделать в обработчике Wm_SysCommand :)
Сделал пока в OnDestroy, вроде пока живёт, погоняю еще...
Игорь Шевченко (2009-06-04 14:48:00) [25]Я бы отправлял сообщение главной форме - закрой все такие же.
> Если так сделать в FormClose, то каждая закрывающаяся форма
> будет опять всем рассылать сообщение. Хорошо ли это?
Такое можно сделать в обработчике Wm_SysCommand :)
Медвежонок Пятачок (2009-06-04 14:47:00) [26]никакого зацикливания не будет даже если в OnClose это сделать
Медвежонок Пятачок (2009-06-04 14:44:00) [27]рассыл надо делать под кнопкой "закрыть все"
Дмитрий Белькевич (2009-06-04 14:44:00) [28]>а если не в FormClose то не будет.
И куда лучше? В OnDestroy? Попробую... Боюсь зацикливания форм друг на друга...
Медвежонок Пятачок (2009-06-04 14:42:00) [29]а если не в FormClose то не будет.
А если и будет то что?
Дмитрий Белькевич (2009-06-04 14:16:00) [30]Если так сделать в FormClose, то каждая закрывающаяся форма будет опять всем рассылать сообщение. Хорошо ли это?
Медвежонок Пятачок (2009-06-04 14:02:00) [31]сообчениями лучше