Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемы с масштабированием


Андрей Молчанов ©   (2006-02-08 18:04:00) 

Есть форма, на ней находятся TCoolBar и кнопка, которая должна находиться в правом нижнем углу.

Проблема в том, что при масштабировании изменяются размеры контролов, но не изменяются размеры самой формы, т.к. BorderStyle = bsSizeable. Это приводит к тому, что кнопка, обычно находящаяся на форме, отображается за краем формы, т.к. она с помощью Anchors привязана к правому нижнему углу.

Уже 2 дня убил на эту проблему. Смотрел в интернете, но решения так и не нашел. Пожалуйста, помогите.


Андрей Молчанов   (2006-02-08 22:29:00) [1]

Всем спасибо, проблема решилась установкой AutoScroll в False.


Андрей Молчанов   (2006-02-08 19:37:00) [2]

>> 1. можешь почитать здесь http://www.ishodniki.ru/art/artshow.php?id=40&cat=1&show=delphi

Здесь описывается проблема шрифтов, у меня проблема с изменением размера формы.

>> 2. если надо чтобы форма нормально ресайзилась, то м.б. класть компоненты на панели, которыми в свою очередь управлять при помощи алигнов, а уже на панелях расставлять якоря.

Попрбовал - не помогло :(

>> 3. также это зависит от свойства Form.Position.

А можно поподробнее? Как именно зависит?

>> И еще у тебя если уменьшать размер формы то будет уменьшаться размер панели, это так надо?

Да, я именно этого и добиваюсь.


Вольный Стрелок   (2006-02-08 19:12:00) [3]

и мой вопрос из близкой темы
http://www.delphimaster.ru/cgi-bin/forum.pl?id=1139392205&n=18


vovnuke   (2006-02-08 19:11:00) [4]

сорри за повтор


vovnuke   (2006-02-08 19:09:00) [5]

1. можешь почитать здесь http://www.ishodniki.ru/art/artshow.php?id=40&cat=1&show=delphi
2. если надо чтобы форма нормально ресайзилась, то м.б. класть компоненты на панели, которыми в свою очередь управлять при помощи алигнов, а уже на панелях расставлять якоря.
3. также это зависит от свойства Form.Position.

И еще у тебя если уменьшать размер формы то будет уменьшаться размер панели, это так надо?


Андрей Молчанов   (2006-02-08 18:29:00) [6]

под масштабированием я имею в виду увеличение PixelsPerInch - то, что настраивается на свойства экрана -> вкладка параметры -> Дополнительно.

Есть форма BorderStyle=bsSizeable, Scaled=True. На ней находятся:
TCoolBar: Align = Top
TPanel: сверху, слева и справа отступы 8px, Anchors = [Top, Left, Right, Bottom]
TButton: снизу и справа отступы 8px, Anchors = [Bottom, Right]

При масштабировании размеры всех компонентов увеличиваются, а сама форма нет, в результате чего контролы вылезают за края. Надо, чтобы размеры формы тоже увеличивались.


vovnuke   (2006-02-08 18:11:00) [7]

а можно по понятней кто куда привязан и что надо получить, т.е. кто должен ресайзится а кто нет?


Джо   (2006-02-08 18:10:00) [8]

Честно говоря, не совсем понял, что в данном конкретном случае понимается под "масштабированием".


Наверх

Титульная страница Поиск, карта сайта Написать письмо