Вниз
Скачать: CL | DM;

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

← →
тихий вовочка ©   (2004-05-04 06:34) [0]

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


← →
xenos   (2004-05-09 01:10) [1]

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


← →
тихий вовочка ©   (2004-05-09 16:46) [2]

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


← →
Sonic_gd   (2004-05-09 19:09) [3]

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


← →
Mihey ©   (2004-05-09 20:10) [4]

2 Sonic_gd:

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

DoubleBuffered := True;

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

Panel1.DoubleBuffered := True;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
14-1088853395
menart
2004-07-03 15:16
2004.07.25
Опять суббота!


3-1088514199
Sonnik
2004-06-29 17:03
2004.07.25
Пользовательский интерфейс.


3-1088685364
Ceval
2004-07-01 16:36
2004.07.25
Подскажите как с помощью ADOTable связать две таблицы ?


1-1089274655
aliced
2004-07-08 12:17
2004.07.25
Панель Delphi отсутствует при открытии проекта


6-1085751039
ГудБой
2004-05-28 17:30
2004.07.25
Как в TTcpCLient указать таймаут.




   Наверх