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

Вниз

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

 
Andrey_rus ©   (2007-08-02 14:20) [0]

Существует ли возможность использовать выравнивание не по краям формы, а по другому контролу?


 
Andrey_rus ©   (2007-08-02 14:21) [1]

Под выравниванием подразумевается AnchorBottom:= true;


 
Дмитрий К ©   (2007-08-02 14:44) [2]

если другой контрол - родитель


 
Andrey_rus ©   (2007-08-02 15:25) [3]

В том то и дело, что другой контрол не является родителем.


 
Andrey_rus ©   (2007-08-04 18:30) [4]

Дело в том, что я обнаружил неприятный глюк с расползанием интерфейса на Viste. Связан он с неправильным выравниванием контролов с AnchorBottom:= true; на форме с borderStyle:= fbsToolWindow; и CanReSize:= false; (run-time)

AnchorRight - работает нормально.


 
Vladimir Kladov   (2007-08-04 18:54) [5]

CanResize на Vista Aero не работает правильно, если устанавливать в run-time, точнее - добавляет ~8 пикселей справа и снизу. Либо форма изначально при создании должна быть CanResize=false.

По идее, с этим глюком можно бороться, устанавливая только обработчик, который не будет давать делать изменение размера, но не менять при этом стиль бордюра на thick. Тогда бы ещё надо обрабатывать WM_NCHITTEST, чтобы курсор мыши не пытался меняться на тот, которым меняют размер формы.


 
Dimaxx ©   (2007-08-05 09:18) [6]

Кстати "расползание" (правда не всего) интерфейса происходит и в ХРюше. Например, давненько приложение писал под темы (с манифестом). На одной из форм расположены метки и левее вровень с ними поля редактирования так, чтобы текст метки был на одной линии с текстом поля редактирования (ну вот нравится мне, чтобы все было аккуратно и красиво как по линейке! :) ). Так вот при отключении тем все "съехало" - текст находится не на одной линии. Как можно от этого избавится - хз, но походу никак. Только проверять при создании форм наличие включенных тем и если не включены (или наоборот) - править координаты ручками...


 
Vladimir Kladov   (2007-08-05 10:06) [7]

Координаты метки задаются всё-таки с верхнего левого угла, как и для всех контролов. В принципе можно использовать дополнительную родительскую панель, и выравнивать (метку - alLeft, edit - alClient), но это может быть накладно, если контролов много. В таком случае действительно лучше своим кодом в run-time поправлять. Опять же, темы могут поменяться на лету, тогда надо отлавливать соответствующее сообщение (посмотрите в коде от MTsvDN, он добавил перехват этот сообщения).



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
3-1193861534
Trump
2007-10-31 23:12
2008.03.23
Как лучше организовать базу данных для коммерческого продукта?


11-1186338197
Vedun
2007-08-05 22:23
2008.03.23
Выделенные ячейки в mdvXLGrid


15-1202824478
Iam
2008-02-12 16:54
2008.03.23
Бесплатная междугородняя IP-телефония


15-1202823736
Kerk
2008-02-12 16:42
2008.03.23
Нюансы общения с заказчиками


15-1202629339
@!!ex
2008-02-10 10:42
2008.03.23
Редактирование видео





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский