Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.07.16;
Скачать: [xml.tar.bz2];

Вниз

Выравнивание компонентов   Найти похожие ветки 

 
Loginov Dmitry ©   (2006-06-30 19:16) [0]

Разрабатываю MDI-приложение. Не получается сделать на вид простую вещь:
есть две панели - у первой Align = alLeft, у второй Align = alBottom. Получается, что вторая панель занимает всю нижнюю часть экрана, а первая панель лежит сверху на второй. Как сделать, чтобы первая панель занимала всю левую часть экрана, а вторая примыкала к ней справа (в оставшейся области формы должны располагаться дочерние MDI-окна)?


 
Palladin ©   (2006-06-30 19:21) [1]

которая alLeft не трогать, положить доп панель и сделать alClient, и уже на доп панел ложить ту которая alBottom

если хочется страшного и не хочется кидать доп понель, то почитай справку по alCustom


 
Loginov Dmitry ©   (2006-06-30 19:28) [2]

> которая alLeft не трогать, положить доп панель и сделать
> alClient, и уже на доп панел ложить ту которая alBottom


Здесь сей фокус не прокатит...


 
Palladin ©   (2006-06-30 19:28) [3]

упс, это же MDI... просшу просчения... либо alCustom для панелей либо надо подумать...


 
Palladin ©   (2006-06-30 19:29) [4]


> Здесь сей фокус не прокатит...

да в порыве энтуазизьма не заметил про MDI...


 
Loginov Dmitry ©   (2006-06-30 20:24) [5]

Я уже начинаю побаиваться, что данная проблемма нерешаема...

alCustom - дает эффект такой же, как и с обычными якорями (использовал override-функцию CustomAlignPosition).

Есть ли у кого еще какие идеи?


 
Palladin ©   (2006-06-30 20:36) [6]


> alCustom - дает эффект такой же, как и с обычными якорями
> (использовал override-функцию CustomAlignPosition).


да нет (меня эта проблема заинтересовала), с alCustom все гораздо хуже...

1. Справка по CustomAlignPosition не соответствует истине
2. Метод CustomAlignPosition в контролс, как оказалось, нигде не вызывался, по крайней мере в VCL source я никаких вызовов не обнаружил...
3. Выход только один, наследник от TForm (или поглубже) и рассказ создаваемой форме что она не в Application.MainForm, а в доп панели...


 
Vlad ©   (2006-06-30 21:19) [7]

хм... интересная задача.
Вобщем-то решил через задницу, путем внедрения одной формы в другую.
Т.е. в проекте еще добавил не MDI форму с панелью alLeft, а потом в эту форму встроил MDI форму (главную) с панелью alBottom
Всех тонкостей не проверял, но вроде работает


 
Loginov Dmitry ©   (2006-06-30 21:26) [8]

> 1. Справка по CustomAlignPosition не соответствует истине
> 2. Метод CustomAlignPosition в контролс, как оказалось,
> нигде не вызывался, по крайней мере в VCL source я никаких
> вызовов не обнаружил...


В Инете нашел про это, проверил, поэтому и написал [4]


> Vlad ©   (30.06.06 21:19) [7]


Прикольно :)


 
guav ©   (2006-06-30 21:38) [9]

Есть такая идея: Поставить у MDI формы autoscroll в False. Ккинуть на MDI форму две панели alLeft alBottom как они хотят лежать. Кинуть ещё две панели выше первых двух по z-orderу. В OnResize первых двух устанавливать уже желаемое положение последних двух.


 
Loginov Dmitry ©   (2006-06-30 22:07) [10]

> guav ©   (30.06.06 21:38) [9]


Отличная мысль! Сенкс!



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

Форум: "Начинающим";
Текущий архив: 2006.07.16;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.009 c
15-1150282525
dexis
2006-06-14 14:55
2006.07.16
Что-та типа splitterа, раскрывающий/скрывающий панель оним кликом


3-1147618940
Express
2006-05-14 19:02
2006.07.16
Ошибка «Не удается найти строку для обновления», MySQL


2-1151646657
Ega23
2006-06-30 09:50
2006.07.16
Ещё раз про фреймы


4-1144095343
Turbid
2006-04-04 00:15
2006.07.16
Проблемма с глобальными переменными в процедуре хука


1-1149236633
PanIlya
2006-06-02 12:23
2006.07.16
Дата в StringGrid (Перенесена из Компоненты)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский