![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с MDI и модальными окнами
wcom © (2002-11-22 08:59:00)Весь проект представляет MDI интерфейс, но возникла необходимость некоторые окна вызывать модально, чего стандартными средствами известными мне не удается сделать. Подскажите плз. как выйти из ситуации. Или возможен второй вариант решения вывести поверх модального окна новое MDI окно ребенка.
Игорь Шевченко (2002-11-22 12:13:00) [1]Александр Спелицин © (22.11.02 12:02)
Обычно форма создается в дизайнере со стилем fsNormal. Потом при определенных условиях она создается со стилем fsMdiChild. Так оно гарантировано работает.
constructor TfAbstractMDIChild.Create(AOwner: TComponent);
begin
inherited;
FormStyle := fsMDIChild;
end;
constructor TfAbstractMDIChild.CreateModal(AOwner: TComponent);
begin
inherited Create(AOwner);
Position := poMainFormCenter;
end;
Александр Спелицин (2002-11-22 12:02:00) [2]var
ModalForm: TSomeMDIChildForm;
begin
ModalForm := TSomeMDIChildForm.Create (Self);
ModalForm.FormStyle := fsNormal;
ModalForm.Visible := False;
ModalForm.ShowModal;
// Что-то делаем.
ModalForm.Free;
end;
dim- (2002-11-22 09:21:00) [3]У меня такая же проблема, только я пытался что бы MDI окно возвращало данные в окно его открывшее, как это сделать лучше спрашивал здесь, но ответы дали не очень.
Я делаю так (может и не правильно) после создания нового MDI окна в старом вхожу в цикл в котором жду пока новое закроют и получаю данные