Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по MDI форме


dimonf ©   (2001-12-21 21:02:00) 

У меня запара. :((( Я открытию две MDI формы. Потом форму N2 распахиваю во весь зкран, затем закрываю форму N2 а почему то форма N1 тоже автоматам распахиваеться. Как мне избавиться от этого эфекта? Я хочу чтобы у меня форма N1 как была открыта так и сохранялась кагда я закрываю форму N2.


dimonf   (2001-12-22 12:42:00) [1]

Большое спосибо :)))


Ю Ю   (2001-12-22 08:11:00) [2]

Как буд-то MS Word ведёт себя иначе :-))
"Развернуть во весь экран" - это указание не отдельной форме, а всем сразу.
Нажми "Восстановить" и все оставшиеся формы примут прежние размеры.
Программно можно сделать, например, так:

procedure TMyChild.FormClose(Sender: TObject; var Action: TCloseAction);
Var iChild:integer;
MainForm:TForm;
begin
MainForm:=TForm(TForm(Sender).Owner);
for iChild:=0 to MainForm.MDIChildCount-1
do MainForm.MDIChildren[iChild].WindowState:=wsNormal;
Action := caFree;
end;

при этом при создании дочерних форм указывать главную в качестве Owner:

procedure TForm1.New1Click(Sender: TObject);
var MyChild: TMyChild;
begin
MyChild:=TMyChild.Create(self);
MyChild.Show;
end;


dimonf   (2001-12-21 21:52:00) [3]

Неужели нет мыслей???


Наверх

Титульная страница Поиск, карта сайта Написать письмо