Форум: "Основная";
Текущий архив: 2003.10.16;
Скачать: [xml.tar.bz2];
ВнизВопросы по 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c