Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.16;
Скачать: CL | DM;

Вниз

Вопросы по MDI Application   Найти похожие ветки 

 
real_dimedrol   (2003-10-07 01:01) [0]

Первый раз в жизни взялся написать MDI приложение и сразу возникла кучка вопросов, на которые ответов пока не нашел. Помогите разобраться!
1.Как во время runtime-а при создании дочернего окна задать его новое положение\размеры до того, как оно будет показано на своем прежнем месте с прежними размерами?
классически делаю так:
mdichildform:=tmdichildform.create(application);
mdichildform.height:=...
mdichildform.width:=...
mdichildform.left:=...
mdichildform.top:=...
Но в этом случае окно сначала появляется на старом месте, а потом уже, естественно, на новом и с новыми размерами, что не красиво.
2.Откуда берутся размеры\положение для дочерних окон? Прога не обращает внимания на те параметры, которые я задаю в Object Inspector. Даже когда Position=poDesigned. Такое ощущение, что главное окно отдает дочернему определенную часть себя и не больше, по крайней мере как отдать больше в design-time я не понял. И положение во время разработки изменить не удается.
3.Есть ли фича для автоматического позиционирования дочерних окон при изменении размеров главного или нужно их таскать\уменьшать программно?
4.Как сделать, чтобы некоторые дочерние окна были topmost? Например как в фотошопе панели инструментов, чтобы их нельзя было закрыть другими окнами?


 
Yttrium ©   (2003-10-07 02:32) [1]

1. Допустим в пункте неу так:
mdichildform:=tmdichildform.create(self);
тогда в обработчике Show чилда:
SetBounds(12,34,67,80);
а в клосе action := caFree;
2. Жестокая правда.
3. ArrangeIcons; Tile; Cascade; и тд. (если я правильно понял)
4. В фотошопе панели инструментов не дочерние окна. И вообще если неизменяет склероз фотошоп вааще не мдаяй.


 
KSergey ©   (2003-10-07 08:05) [2]

MDI интерфейс не подразумевает управление размером и положением окнами внутри клиентской части главного окна. Это указывает либо пользователь, либо система. Все.
А по 4 Yttrium сказал верно: панели интсрументов не имеют никакого отношения к MDICahild окнам MDI-приложения.


 
Hooch ©   (2003-10-07 08:41) [3]

что б избавится от эффекта 1 надо в OnCreate написать

Exclude(FFormState,fsVisible);
.. меняем размер



Страницы: 1 вся ветка

Текущий архив: 2003.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.023 c
3-51084
Deniz
2003-09-25 13:30
2003.10.16
След. запись?


1-51217
Crazy_user
2003-10-03 22:33
2003.10.16
Странный еррор :)


14-51443
Andy Bitoff
2003-09-30 02:20
2003.10.16
Твое место - за тысячной Амигой... 8-)))


14-51446
lokka
2003-09-29 20:51
2003.10.16
Аутсорсинг!


14-51474
Карелин Артем
2003-09-29 13:44
2003.10.16
Ограничения на СОМ-порт.