Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];
ВнизРазмер дочернего окна Найти похожие ветки
← →
NKT (2007-07-27 09:19) [0]Добрый день !
Есть главная форма Form1 (fsMDIForm) , дочерняя форма - Form2 (fsMDIChild) , формы размещаются каскадом (Cascade) .
Какие свойства и какие значения они должны принимать , чтобы дочерняя форма Form2 (fsMDIChild) занимала всю клиентскую область родительской формы ?
Всем спасибо .
← →
Сергей М. © (2007-07-27 09:38) [1]WindowState = wsMaximized
← →
NKT (2007-07-27 09:56) [2]Еще вопрос - почему для онодокументного приложения при создании формы прекрасно работает ->
LabeledEdit1.OnKeyDown := OKBottomDlg.OnKeyDown;
LabeledEdit2.OnKeyDown := OKBottomDlg.OnKeyDown;
для многодокументального приложения ругается , очень удобно использовать такой способ обработки нажатия клавиш .
← →
Сергей М. © (2007-07-27 09:57) [3]
> ругается
Что, прямо так и говорит - "ругаюсь" ?)
← →
NKT (2007-07-27 10:44) [4]Если при вызове дочернего окна задаю WindowState := wsMaximized :
Form2 := TForm2.Create(Application);
Form2.WindowState := wsMaximized;
то при вызове следующего окна Form3 - >
Form3 := TForm3.Create(Application);
предыдующее Form2 исчезает с экрана , на клиентской области родительской формы показана только Form3 , при закрытии Form3 форма Form2 восстанавливается но с размером , который был при разработке .
Необходимо , чтобы Form3 была поверх Form2 .
← →
Сергей М. © (2007-07-27 10:47) [5]
> NKT (27.07.07 10:44) [4]
> при закрытии Form3 форма Form2 восстанавливается но с
> размером , который был при разработке
В событии OnActivate восстанавливай нужное значение св-ва WindowState.
А причем здесь "ругается" ?
← →
NKT (2007-07-27 11:42) [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 12:08) [7]А если так
Form3 := TForm3.Create(Application);
Form2.WindowState := wsMaximized;
?
← →
Dib@zol © (2007-07-27 12:11) [8]И вообще, MoveWindow рулит! Проставляешь в размерность прямоугольник клиентской области и вуаля...
← →
NKT (2007-07-27 15:24) [9]-> Form3 := TForm3.Create(Application);
Form2.WindowState := wsMaximized;
и Form2 закрывает Form3 .
Пробовала и метод Tile , каскадом не действует .
Попробую -> < И вообще, MoveWindow рулит! Проставляешь в размерность прямоугольник клиентской области и вуаля >
← →
NKT (2007-07-27 15:46) [10]Попробую -> < И вообще, MoveWindow рулит! Проставляешь в размерность прямоугольник клиентской области и вуаля >
Спасибо . Так получилось .
← →
iXT © (2007-07-30 09:21) [11]А почему Form2 и Form3 имеют разных предков? Так действительно надо, т.е. документы разные в "многодокументальном приложении"?
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.08.26;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.057 c