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

Правильная отрисовка канвы при скролинге   Найти похожие ветки 

 
off   (2004-09-08 13:27) [0]

Здравствуйте, мастера. На форме лежит панель, на панели лежит пэйнтбокс (такая вот порнография и беспредел). При этом размер панели больше размера формы отчего на ней появляются полосы прокрутки. С левого края в пэйнтбокс выводятся цифирки в столбец (canvas.textout в ПэйнтбоксПэйнт) при этом они должны там оставаться независимо от кого как и куда мы прокручиваем. Причем когда пользуешься стрелками на горизонтальной полосе прокрутки - отрисовка происходит правилно. А вот когда таскаешь за ползунок - остается след. Выходит пэйнтбокс не обновляется. Как это побороть (т.е. как обработать прокрутку ведь у этого компонента нет события ОнАфтаСкрол)?


 
off   (2004-09-09 06:12) [1]

Что вы тоже не знаете как?! Жаль :(


 
KSergey ©   (2004-09-09 09:40) [2]

а) код
б) стирать надо перед рисованием


 
off   (2004-09-09 12:08) [3]

procedure TFStart.PB1Paint(Sender: TObject);
var I: Integer;
begin
for I := 0 to 31 do
begin
PB1.Canvas.TextOut(- PB1.ClientOrigin.X + 6,(I+1)*40-26,IntToStr(I));
end;
Refresh(Sender);
end;


 
OFF   (2004-09-10 06:28) [4]

Код я уже выложил, а вот насчет того что "стирать надо перед рисованием" это по моему никчему т.к. дело не в том что не стирается, а в том, что не обновляется. Т.е. когда мы используем полосу прокрутки, то событие не обрабатывается.


 
TUser ©   (2004-09-10 09:56) [5]

Обработай wm_vscroll и вызови там перерисовку. А стирать вс-таки придется.


 
KSergey ©   (2004-09-10 10:13) [6]

Refresh(Sender);

А вот это издевательство.
Отрисовали, и тут же опять просим перерисоваться...



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

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



Память: 0.46 MB
Время: 0.021 c
8-1087936036
Wistler
2004-06-23 00:27
2004.09.26
Картинки в БК


1-1094940046
Davinchi
2004-09-12 02:00
2004.09.26
Как получить Hendle DLL


1-1094835975
Pers
2004-09-10 21:06
2004.09.26
ListBox


1-1095056606
П7
2004-09-13 10:23
2004.09.26
Помогите с TStream


6-1089828767
Фёдор Мегатронов
2004-07-14 22:12
2004.09.26
Как послать php запросы ?




   Наверх