Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.06;
Скачать: CL | DM;

Вниз

Как убрать мерцание при перерисовке?   Найти похожие ветки 

 
Raduga   (2003-10-01 11:00) [0]

Привет, мастера!

У меня такая проблема.
Создал компонент - потомок TgraphicControl, рисует изометрическое изображение цилиндра. Необходимо динамически закрашивать его часть (допустим от положения скролбара)во время работы программы. Если на форме много таких компонентов, то при перезакраске заметно мерцание, как от него избавится?
Спасибо.


 
MBo ©   (2003-10-01 13:42) [1]

Рисовать на битмапе размеров в клиентскую область контрола, по Paint Draw или Bitblt его на Canvas


 
Denius   (2003-10-01 17:20) [2]

Свойство у формы есть такое... Называется doublebuffered типа boolean. Поставь в true должно помочь чучуть... Имеется ввиду форма на которой набросаны твои компоненты...


 
Думкин ©   (2003-10-02 05:50) [3]

Дубль буфер он примерно так и работает, как предложено выше.


 
Raduga   (2003-10-02 08:12) [4]

Дубль буфер помогает, НО если выставляю дубль буфер в труе и на форме около 20 моих компонентов, то загрузка проца увеличивается до 50 и более процентов при перерисовке (проц гигагерцовый +384 мб озу ). Вот.
>MBo
> Я так и сделал. Только использую два битмапа (один в качестве буффера) и не использую Refresh и т.п. для перерировки компонента, а просто рисую в одном битмапе, копирую в другой и потом на владельца. И вызываю Paint компонента.


 
MBo ©   (2003-10-02 08:21) [5]

>копирую в другой и потом на владельца. И вызываю Paint компонента.
Я не уловил твою логику. Копировать на владельца надо в Paint.


 
Raduga   (2003-10-02 08:39) [6]

>Mbo
Неточно выразился. Копирую на владельца в Paint, перерисовываю без Refresh, а вызывая метод Paint.


 
Анонимщик ©   (2003-10-02 11:13) [7]

Ну что ты прыгаешь?
Смотри там, где спрашивал:

http://delphimaster.net/view/1-1064991772/


 
Raduga   (2003-10-02 13:22) [8]

>Анонимщик © (02.10.03 11:13)
Я не прыгаю, я сразу в два места написал :)


 
Думкин ©   (2003-10-02 13:52) [9]

> Raduga (02.10.03 13:22)

Это нарушение правил.



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

Текущий архив: 2004.02.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.04 c
3-16139
Dmitriy Yakovenko
2004-01-15 12:44
2004.02.06
Поле типа INT64 в Delphi7


3-16098
Veetyok
2004-01-11 00:05
2004.02.06
SQL возможности


1-16324
Rude
2004-01-23 20:29
2004.02.06
Как сделать чтобы TShellTreeView не проверял готовность диска А:.


6-16557
AnettoII
2003-12-02 22:48
2004.02.06
Как отследить в программе начало сессии?


3-16173
Gorlum
2004-01-14 11:52
2004.02.06
Invalid use of key word