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

Использование ScrollBars   Найти похожие ветки 

← →
fog   (2007-11-18 22:12) [0]

Имеется компонент(от TGraphicControl), самомасштабируемый отностительно текущей ClientWidth(Height).
Если он на форме (alClient), при задании (показ 50 %)
HorzScrollBar.Range := FMCW.ClientWidth*2
при запуске показывает 50 %, а при Maximize - 70-80%
Как добиться эквивалентности вывода при использовании скроллов от формы?


← →
Palladin ©   (2007-11-19 12:14) [1]

ну а зачем ты его делаешь alClient?


← →
fog   (2007-11-19 15:41) [2]

Компонент - preview; alClient + функции печати, масштабирования и т.п. = программа по обработке и печати своих данных


← →
fog   (2007-11-19 22:15) [3]

Задачу решил, но получается чушь. Чтобы правильно все отображалось, приходится делать:
procedure TForm1.FormResize(Sender: TObject);
begin
HorzScrollBar.Range := ClientWidth*2;
HorzScrollBar.Position := FPos+1;
HorzScrollBar.Position := FPos-1;
end;


Без двух изменений HorzScrollBar.Position неправильно отрисовывается (со смещением). Хотелось бы понять.


← →
Германн ©   (2007-11-20 01:06) [4]


> Без двух изменений HorzScrollBar.Position неправильно отрисовывается
> (со смещением). Хотелось бы понять.

Хм. Было что-то похожее, именно связанное с Resize-ом, но с другим компонентом. Raskov тогда нашел самое грамотное решение. Какое не помню. И не могу вспомнить, поскольку у себя применил более простое решение, подошедшее моей задаче.
P.S. Дело было в апреле-мае нынешнего года.



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

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



Память: 0.45 MB
Время: 0.022 c
5-1164195596
--= Eagle =--
2006-11-22 14:39
2007.12.16
Вызвать редактор сабкомпоненты


11-1181380412
mdw
2007-06-09 13:13
2007.12.16
Версия 2.65


4-1180778610
gray_falcon
2007-06-02 14:03
2007.12.16
не могу запустить сервис


15-1195017660
Fin
2007-11-14 08:21
2007.12.16
Запуск программ без цифровой подписи в Viste.


2-1195554111
Quart
2007-11-20 13:21
2007.12.16
CheckListBox




   Наверх