Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как при изменении размера окна сделать чтобы контролы ресайзелись пропорционально

2.0K
22 апреля 2003 года
actor
21 / / 09.03.2003
Как при изменении размера окна сделать чтобы контролы ресайзелись пропорционально все надо программировать ручками или есть стандартные(устаявшиеся) методы.
362
23 апреля 2003 года
_kolyan
339 / / 03.12.2002
Цитата:
Originally posted by actor
Как при изменении размера окна сделать чтобы контролы ресайзелись пропорционально все надо программировать ручками или есть стандартные(устаявшиеся) методы.



У каждого компонента есть свойство Anchors, по умолчанию там стоит Top и Left, это означает, что при ресайзе окна сохраняется позиция левого верхнего угла. Поставишь там Right - при ресайзе кмпонент будет еще и растягиваться, тобы правая сторона оставалать на прежнем расстоянии от правой границы контейнера. А дальше экспериментирую и подбирай то, что тебе нужно.

310
23 апреля 2003 года
fellow
853 / / 17.03.2003
А если есть необходимость и шрифт ресайзить,то обрати внимание на ScaleBy, PixelsPerInch и т.д. Хотя, на мой взгляд, не слишком это внятно у борланда описано. Есть и сторонние компоненты для автоматического изменения размеров.
483
23 апреля 2003 года
DED_MOROZ
67 / / 20.03.2000
Все так, однако интересно было бы узнать как сделать так чтобы все контролы не поплыли при запуске проги на другом разрешении? Или только вручную масштабировать при выводе формы на экран?
310
24 апреля 2003 года
fellow
853 / / 17.03.2003
Цитата:
Originally posted by DED_MOROZ
Все так, однако интересно было бы узнать как сделать так чтобы все контролы не поплыли при запуске проги на другом разрешении? Или только вручную масштабировать при выводе формы на экран?



Ну, я обычно стараюсь максимально использовать возможности Anchor и Align, оставшиеся элементы изменяю вручную. Предварительно, конечно, тщательно продумываю структуру формы.
В одной программе использовал чей-то компонент для автоматического зума, но он меня не впечатлил. ПРосто времени не было делать что-то самому.

748
16 июня 2005 года
AlphaOmega
159 / / 28.09.2004
Народ, а если надо ресайзить объект в Borland C++ Builder 1-ой версии (где нет Anchors)?
У меня в проге есть объект TPanel, который я даю возможность к изменению размера. Меня попросили сделать так, чтобы когда хватаешь за уголок - ресайз шёл пропорционально. Как в этом случае сделать?
310
16 июня 2005 года
fellow
853 / / 17.03.2003
Перехватываешь нужные события, вычисляешь размеры с учётом пропорций, затем устанавливаешь принудительно вычисленный размер.
748
16 июня 2005 года
AlphaOmega
159 / / 28.09.2004
Цитата:
Originally posted by fellow
Перехватываешь нужные события, вычисляешь размеры с учётом пропорций, затем устанавливаешь принудительно вычисленный размер.


А поконкретнее (с примером например)?...
Или чё-нибыть более проще нету?

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог