Автор: oleg_alexeev (27.02.2007 в 14:27)
Мигание происходит по той причине, что перерисовка окна происходит в два приёма.
Сначала оконная процедура получает сообщение WM_ERASEBKGND и закрашивает
окно цветом фона. Затем она получает сообщение WM_PAINT и рисует содержимое
экрана.
Рисование без мигания заключается в том, что при получении WM_ERASEBKGND
окно не затирается фоном, а при получении WM_PAINT содержимое окна рисуется
в оперативной памяти, а затем одной операцией переписывается в видеопамять.
Приведенный код похож на то что нужно, но, по-моему, там есть ошибки. По крайней
мере есть неясности.
Если есть желание действительно разобраться - надо читать Петцольда.