Форум: "KOL";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];
Внизизбыточные перерисовки компонентов Найти похожие ветки
← →
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 вся ветка
Форум: "KOL";
Текущий архив: 2003.10.13;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.009 c