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

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

Размер дочернего окна


NKT ©   (2007-07-27 09:19:00) 

Добрый день !
Есть главная форма Form1 (fsMDIForm) , дочерняя форма - Form2 (fsMDIChild) , формы размещаются каскадом (Cascade) .
Какие свойства и какие значения они должны принимать , чтобы дочерняя форма Form2 (fsMDIChild) занимала всю клиентскую область родительской формы ?
Всем спасибо .


iXT   (2007-07-30 09:21:00) [1]

А почему Form2 и Form3 имеют разных предков? Так действительно надо, т.е. документы разные в "многодокументальном приложении"?


NKT   (2007-07-27 15:46:00) [2]

Попробую ->  <  И вообще, MoveWindow рулит! Проставляешь в размерность прямоугольник клиентской области и вуаля >

Спасибо . Так получилось .


NKT   (2007-07-27 15:24:00) [3]

->  Form3 := TForm3.Create(Application);
    Form2.WindowState := wsMaximized;

и  Form2 закрывает Form3 .

Пробовала и метод Tile , каскадом не действует .

Попробую ->  <  И вообще, MoveWindow рулит! Проставляешь в размерность прямоугольник клиентской области и вуаля >


Dib@zol   (2007-07-27 12:11:00) [4]

И вообще, MoveWindow рулит! Проставляешь в размерность прямоугольник клиентской области и вуаля...


Сергей М.   (2007-07-27 12:08:00) [5]

А если так

Form3 := TForm3.Create(Application);
Form2.WindowState := wsMaximized;

?


NKT   (2007-07-27 11:42:00) [6]

работает ->  если сделать так :
Form2 := TForm2.Create(Application);
Form2.LabeledEdit1.OnKeyDown := OKBottomDlg.OnKeyDown;
Form2.LabeledEdit2.OnKeyDown := OKBottomDlg.OnKeyDown;

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

Form2 := TForm2.Create(Application);
Form2.WindowState := wsMaximized;

то при вызове следующего окна Form3 - >
    Form3 := TForm3.Create(Application);
предыдующее Form2 исчезает с экрана , на клиентской области  
родительской формы показана только  Form3 .
Необходимо , чтобы  Form3  была поверх  Form2 .


Сергей М.   (2007-07-27 10:47:00) [7]


> NKT   (27.07.07 10:44) [4]


> при закрытии  Form3 форма  Form2 восстанавливается но с
> размером , который был при разработке


В событии OnActivate восстанавливай нужное значение св-ва WindowState.

А причем здесь "ругается" ?


NKT   (2007-07-27 10:44:00) [8]

Если при вызове дочернего окна задаю WindowState := wsMaximized :

Form2 := TForm2.Create(Application);
Form2.WindowState := wsMaximized;

то при вызове следующего окна Form3 - >
     Form3 := TForm3.Create(Application);
предыдующее Form2 исчезает с экрана , на клиентской области родительской формы показана только  Form3 , при закрытии  Form3 форма  Form2 восстанавливается но с размером , который был при разработке .
Необходимо , чтобы  Form3  была поверх  Form2 .


Сергей М.   (2007-07-27 09:57:00) [9]


> ругается


Что, прямо так и говорит - "ругаюсь" ?)


NKT   (2007-07-27 09:56:00) [10]

Еще вопрос - почему для онодокументного приложения при создании формы прекрасно работает ->  
                LabeledEdit1.OnKeyDown := OKBottomDlg.OnKeyDown;
                LabeledEdit2.OnKeyDown := OKBottomDlg.OnKeyDown;
для многодокументального приложения ругается , очень удобно использовать такой способ обработки нажатия клавиш .


Сергей М.   (2007-07-27 09:38:00) [11]

WindowState = wsMaximized


Наверх

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