Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как избежать пропадания рисунка


тихий вовочка ©   (2004-05-04 06:34:00) 

Рисую на канве Image'а, расположенного на панели. Чтобы избежать мерцания выставил у панели DoubleBuffered. Вроде бы все отлично. Так делал уже много раз. Но у меня на панели размещен еще TChart. И при отрисовки кривой на TChart почему-то происходит очистка моего Image'а, да еще черной кистью. Почему так происходит? Ведь, если в Image'е рисовать, то Bitmap там уже будет хранить твой рисунок до опопупения и система при WM_PAINT нарисует все то же самое, что уже хранится в Bitmap'е. Кто-нибудь сталкивался с подобным?


Mihey   (2004-05-09 20:10:00) [1]

2 Sonic_gd:

Свойство скрыто от Object Inspector. В коде пишешь в onCreate формы:

DoubleBuffered := True;

Или если изображение на панели, то:

Panel1.DoubleBuffered := True;


Sonic_gd   (2004-05-09 19:09:00) [2]

Слышь, Ваван? А где этот твой  DoubleBuffered взять? А то я наверно слепой!!!!!!!!!!


тихий вовочка   (2004-05-09 16:46:00) [3]

Если это вопрос - не шутка, то расскажу.Все очень просто. Надо у формы или панели выставить св-во DoubleBuffered в true например, при показе формы. А что касается csOpaque, то я его пользовал только при создании компонент - потомков TGraphicControl   ControlStyle := ControlStyle + [csFramed, csOpaque];
А мой вопрос нашел вообще идиотское решение - ничего у меня не пропадало, просто в программе есть OpenDialog и когда на имени файла два раза щелкали вместо кнопки открыть, вызывался еще и OnMouseUp для Image и моя прога честно очищала рисунок. Вот так-то


xenos   (2004-05-09 01:10:00) [4]

ВАВАН, дружище, расскажи  поподробнее как ты "делал много раз" избавлялся от мерцаний... Тексейра и Пачеко говорят мол делайте так - мерцаний не будет..., везде говорят +[csOpaque] - вообще не пойму... WM_ERASEBACKGROUND - вообще жуть... Башка пухнет - памаги а? ну хоть кусок кода пришли...


Наверх

Титульная страница Поиск, карта сайта Написать письмо