Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "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.007 c
1-40415
Bezpal
2003-10-03 08:56
2003.10.13
Люди не знаете, есть ли где нить русский help для Delphi?


7-40710
GuestTM
2003-07-30 11:34
2003.10.13
глюки с DIBENG.DLL при смене видео режима!!!


3-40287
MakNik
2003-09-22 12:53
2003.10.13
ADO+MSSQL


3-40257
GS
2003-09-23 12:10
2003.10.13
Подскажите, как бороться РАЗРАСТАЕТСЯ база Access2000


1-40510
Fedja
2003-10-02 03:29
2003.10.13
Как определить, что нажатие мыши было за формой





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский