Вниз
Скачать: CL | DM;

Проблемы с масштабированием   Найти похожие ветки 

← →
Андрей Молчанов   (2006-02-08 18:04) [0]

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

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

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


← →
Джо ©   (2006-02-08 18:10) [1]

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


← →
vovnuke ©   (2006-02-08 18:11) [2]

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


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

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

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

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


← →
vovnuke ©   (2006-02-08 19:09) [4]

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

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


← →
vovnuke ©   (2006-02-08 19:11) [5]

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


← →
Вольный Стрелок ©   (2006-02-08 19:12) [6]

и мой вопрос из близкой темы
http://delphimaster.net/view/2-1139392205/


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

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

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

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

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

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

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

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

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


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

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



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.027 c
15-1139896062
Ega23
2006-02-14 08:47
2006.03.12
С Днём рождения! 14 февраля


10-1115197863
Phenix2005
2005-05-04 13:11
2006.03.12
Встраивание Excel в форму приложения


2-1140530847
Korefey
2006-02-21 17:07
2006.03.12
преобразование числа в строку


15-1139941005
Кто - то
2006-02-14 21:16
2006.03.12
Вопрос законопослушного программиста


2-1140963693
Новочеркасский Волк
2006-02-26 17:21
2006.03.12
Передать TPoint серверу.




   Наверх