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

избыточные перерисовки компонентов   Найти похожие ветки 

← →
miek   (2003-01-30 21:29) [0]

Избыточные перерисовки компонентов в KOL.
1) Создаем новый проект, вешаем на форму KolPaintbox и вводим переменную-счетчик
(при создании формы его обнуляем). В обработчике OnPaint Paintbox-а увеличиваем
счетчик на единицу, рисуем что-нибудь на канве и счетчик выводим на заголовок
формы. Запускаем.
Все идет нормально, как и в VCL. Фон компонента не перерисовывается, но так и задумывалось.
2) Ставим свойство paintbox-а DoubleBuffered=True. В каждом случае, требующем перерисовки,
счетчик будет увеличиваться не на 1, а на 2.
3) Ставим свойство Transparent=true. Наблюдается нехорошее явление - перерисовка
выполняется гораздо чаще, плюс иногда она проходит шести(!)кратно. Подвигаем окно
по экрану - каждое движение вызывает две перерисовки.
4) Сделаем так: в начале события отрисовки поставим Paintbox1.Beginupdate, а
в конце, соответственно, Paintbox1.Endupdate.
Счетчик даже без всяких внешних воздействий начинает бешено крутить сотни и тысячи!

Кто-нибудь прокоментирует эти наблюдения?


← →
SPeller ©   (2003-01-30 22:52) [1]

Это известный косяк в КОЛ, просто до него ещё ни одни умелые ручки не добрались. Ждите... :-)



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

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



Память: 0.45 MB
Время: 0.017 c
14-40661
Максим
2003-09-23 07:52
2003.10.13
Что делать когда пищит проц !!!


3-40243
Дмитрий К.
2003-09-23 15:03
2003.10.13
Удаление строк из таблицы


1-40449
Zheks
2003-10-03 12:13
2003.10.13
Как обратиться к текущему времени таймера?


1-40435
dim-
2003-09-27 02:27
2003.10.13
Высота заголовка окна


6-40538
lord
2003-08-15 18:40
2003.10.13
Нить + сокет или жизнь после смерти




   Наверх