Re[3]: и снова мерцание, hbrBackgroung , WM_ERASEBKGND и FillRectangle
От: CEMb  
Дата: 27.03.13 13:23
Оценка:
Здравствуйте, galion, Вы писали:


G>что значит бак рисуется родителем?


Ну, к примеру, есть у нас круглая на вид кнопка, а родительское окно залито градиентом.
Тогда wm_erasebkgnd кнопки потрёт часть родительского окошка, если не принять меры.
Можно в таких случаях перед отрисовкой вызвать рисовалку родителя, конкретно указав ему
в InvalidateRect прямоугольник ребёночного окна. При этом у него должна быть или нулевая кисть в окне
или просто wm_erasebkgnd return TRUE; После чего рисуем свой контент.
Вот тут есть пример, но без градиента.

G>Фон я рисую в событии paint.


Фон лучше рисовать как раз в wm_erasebkgnd, не принципиально, но всё же.
В 99% случаев тон однородный, и всё решается установкой кисти для окна, окно само фон рисует.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.