Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Смещение Image


Автор: Allexander 30.6.2006, 18:30
Уважаемые подскажите как  сделать
На форме есть PageControl на нем размещаю Image и потом в таймере смещаю image 
Image1->Left-=1;
но при этом картинка так жутко мерцает.
Вопрос в следующем как можно избавиться от этого мерцания 
 DoubleBuffer=true; в FormOnPaint непомогает
Люди подскажите как быть 
Заранее спаисбо  smile  

Автор: Artemon 1.7.2006, 15:56
Конечно будет мигать.

Кто же сам компонент передвигает??????? smile

Ты передвигай изображение ВНУТРИ Image. 

Автор: mr.Anderson 1.7.2006, 16:23
А почему в OnCreate главной формы не написать вот это:
Код

MainForm->DoubleBuffered = true; // MainForm - имя главной формы
WNDCLASS WND;
memset(&WND,0,sizeof(WND));
WND.style = 0;

И никаких морганий не будет. И можно будет перемещать сам компонент.

Добавлено @ 16:26 
Цитата

Кто же сам компонент передвигает??????? 

Я, например. smile  

Автор: Artemon 1.7.2006, 18:24
Цитата

 MainForm->DoubleBuffered = true; // MainForm - имя главной формы
WNDCLASS WND;
memset(&WND,0,sizeof(WND));
WND.style = 0;


Это конечно все хорошо..............

1) Хватилобы первой строки (MainForm->DoubleBuffered = true; )
2) Причем тут WNDCLASS?
 

Автор: Allexander 1.7.2006, 21:40
Спасиб уже разобрался )) 

Автор: mr.Anderson 2.7.2006, 12:59
Artemon, просто первой строчки недостаточно. 

Автор: Artemon 5.7.2006, 10:04
Цитата

Artemon, просто первой строчки недостаточно. 


Я тебя уверяю, первой строки достаточно.

WNDCLASS - используется при регистрации окна, сдесь он нивкоем разе не нужен.


P.S.
    Это уже все лирика................... smile  

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)