Главная страница
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.015 c
14-51476
Yorick
2003-09-24 13:23
2003.10.16
Как можно отвоевать девушку?


9-51047
Gayrus
2003-03-22 16:14
2003.10.16
Без OpenGL


7-51547
tipman
2003-08-02 17:28
2003.10.16
Событие в Com портах - как без тормоза своего приложения?


1-51180
romeo
2003-10-04 23:05
2003.10.16
Не происходит событие OnMouseWheel


1-51318
WondeRu
2003-10-06 09:29
2003.10.16
Корреляционные функции