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

Вниз

Почему мерцает Image?   Найти похожие ветки 

 
dmitrlast ©   (2006-04-21 04:58) [0]

При добавлении часов в программу мерцает Image согласно секундам. Как этого избежать?


 
antonn ©   (2006-04-21 06:30) [1]

dmitrlast ©   (21.04.06 4:58)
При добавлении часов

каких?


 
SamBrook ©   (2006-04-21 10:31) [2]

Добавьте в OnCreate формы

Image.parent.doublebuffered:=true;


 
Серджинйо   (2006-04-24 02:41) [3]

Не добавлять часы...


 
grisme ©   (2006-04-24 05:30) [4]

включи или организуй двойную буферизацию. {если хочешь, тройную ;)}


 
AlexACD ©   (2006-08-29 20:22) [5]

Проверка связи..


 
AlexACD ©   (2006-08-29 20:24) [6]

Проверка связи..


 
AlexACD ©   (2006-08-29 20:33) [7]

Ага! Есть связь значит..
Отвечаю почему мерцает:
Есть такое сообщение каждому окошку виндовоза: WM_PAINT. Так вот по этому сообщению функция обработки сообщений окна должна рисовать окно. Класс Image при перерисовке стирает сначала содержимое (своего окошка), а потом рисует туда по новой. Избежать можно следующим образом: Сделай Имэйдж невидимым, и по таймеру перекидывай содержимое Image на канвас окна (главного или тоже Image, но видимого) с помошью BitBlt (Bit Block Transfer). По-моему, даже у канваса есть такой метод.


 
Eraser ©   (2006-08-29 20:36) [8]

> [0] dmitrlast ©   (21.04.06 04:58)

еще может помочь перекрытие сообщения WM_ERASEBKGND, имеет смысл использовать, если окно перерисовывется полностью при каждом вызове метода прорисовки.


 
Stexen ©   (2006-08-30 19:40) [9]


> Почему мерцает Image

Потому что это TImage


 
DVM ©   (2006-09-04 11:07) [10]

Если это VCL то просто включить двойную буферизацию и не заниматься ерундой. Обновлять часы через Invalidate()
Если VCL не используется, то рисовать все в WM_PAINT и просто вызывать обработчик периодически.



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

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

Наверх




Память: 0.48 MB
Время: 0.041 c
4-1166135525
Альберт
2006-12-15 01:32
2007.05.13
Отправить данные на сервер


2-1176927483
ALLON
2007-04-19 00:18
2007.05.13
Как открыть базу зная имя?


2-1176964506
inoc
2007-04-19 10:35
2007.05.13
Процедура балансировки дерева


15-1176234849
Knight
2007-04-10 23:54
2007.05.13
Как в таблице Access ключевое, автоинкрементное поле (Счётчик)&#133


15-1176492696
Rouse_
2007-04-13 23:31
2007.05.13
Траурная нота