Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.218.184.214] |
|
Сообщ.
#1
,
|
|
|
Есть на форме PaintBox и есть функция реакции на OnPaint. При отрисовке содержимого PaintBox окно мигает. В визуальной студии в С++ есть функция окна OnEraseBkgnd, из которой можно вернуть false, чтобы окно не заполнялось фоновым цветом перед отрисовкой и тогда не будет мигания. Я рисую на HDC и потом копирую в PaintBox. Каким образом можно отменить заполнение фоном PaintBox?
|
Сообщ.
#2
,
|
|
|
У формы (родителя PaintBox) выставлено свойство DoubleBuffered?
|
Сообщ.
#3
,
|
|
|
Цитата MBo @ У формы (родителя PaintBox) выставлено свойство DoubleBuffered? Наверное не выставлено. Явно это нигде не прописано. Для чего это надо, и что сделать, чтобы его выставить? Добавлено Цитата MBo @ У формы (родителя PaintBox) выставлено свойство DoubleBuffered? Нашел это свойство, в функции Create установил его в true, мигание осталось. Попробовал установить в false, мигание осталось. Или его надо как то по другому выставлять? |
Сообщ.
#4
,
|
|
|
Нет, так и надо (или в инспекторе объектов)
Как организовано рисование, что там делается? Правильно - завести битмап, рисовать всё в нём, в OnPaint PaintBox-а просто делать Draw битмапа. |
Сообщ.
#5
,
|
|
|
Цитата MBo @ Нет, так и надо (или в инспекторе объектов) Как организовано рисование, что там делается? Правильно - завести битмап, рисовать всё в нём, в OnPaint PaintBox-а просто делать Draw битмапа. Ура!!! Все заработало. Оказалось, что у меня паинтбокс не на форме, а на панели. Свойство установил для панели и все заработало! Огромное спасибо за помощь. |