Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как устранить мерцание при рисовании TLabel на Graphics::TBitmap

6.2K
20 июня 2007 года
santey
28 / / 31.12.2005
Проблема такая.

Имеется проект (данном случае упрощенный с одним графиком и одной меткой, на самом деле графиков с десяток и меток столько же), который рисует график на канве формы, на котором также имеется метка с надписью графика.
После того, как рисуется график мы обновляем надпись и при обновлении происходит неприятное мерцание метки.
Как можно устранить данное мерцание, чтобы вывод текста был без мерцания, так как на медленных машинах слишком заметно перерисовывание надписи.

Например,

Код:
Ansistring NameGraphic;

//функция рисования графика
void TForm::PaintGraphic()
{
   //Здесь мы выполням множество операций связанных с рисованием на канве BitMap, а далее копируем все на канву формы..................................................................................................................
   BitBlt(Canvas->Handle,0,0,Width,Height,BitMap->Canvas->Handle,0,0,cmSrcCopy);   //копируем изображение с графиками на канву формы
}

//перерисовываем изображение в том, случае, если меняется размер формы или же перекрывается другими окнами
void __fastcall TFormMain::FormPaint(TObject *Sender)            
{
   PaingGraphic();                        //рисуем график
}

//При нажатии кнопки рисуем график на канве формы, а далее выводим название графика
void __fastcall TFormMain::ButtonClick(TObject *Sender)
{
   PaintGraphic();                         //рисуем график
   Label->Caption=NameGraphic;  //обновляем надпись
}
1
21 июня 2007 года
kot_
7.3K / / 20.01.2000
FormMain->DoubleBuffered = true;
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог