Перерисовка
В обработчике WM_PAINT у меня есть switch, который в зависимости от логической переменной или рисует квадратик или стирает его. В проге, перед вызовом Invalidate(FALSE), я меняю значение логической переменной, но оно, по-видимому, не успевает изменяться и вместо стирания квадратика PAINT его рисует!
вроде сообщение WM_PAINT принимает токо окно, -> надо создать окно с квадратиком :)
Цитата:
Originally posted by Andrdandr
вроде сообщение WM_PAINT принимает токо окно, -> надо создать окно с квадратиком :)
вроде сообщение WM_PAINT принимает токо окно, -> надо создать окно с квадратиком :)
Я, конечно, ламер, но уж не настолько :)
Квадратик рисуется, но в случае с Invalidate(TRUE) он движется нормально, только окно моргает; а в случае с Invalidate(FALSE) ничего не дергается, только предыдущий квадратик не стирается!
Как сделать, чтобы все было ок?
Цитата:
Originally posted by kashman
Чтоб, экран не моргал, изображение сперва нужно нарисовать в контексте устройства в памяти, и после этого выводить на экран (BitBlt)
Цитата:
Originally posted by rostyslav
Чтоб, экран не моргал, изображение сперва нужно нарисовать в контексте устройства в памяти, и после этого выводить на экран (BitBlt)
Чтоб, экран не моргал, изображение сперва нужно нарисовать в контексте устройства в памяти, и после этого выводить на экран (BitBlt)
Спасибо. Теперь все работает как надо.