2010年(13)
分类: 嵌入式
2010-01-20 13:28:46
BeginPaint() 和EndPaint()
BeginPaint() 和EndPaint() 可以删除消息队列中的MGS_PAINT消息,并使无效区域有效。GetDC()和ReleaseDC()并不删除也不能使无效区域有效,因此当程序跳出 MSG_PAINT 时 ,无效区域仍然存在。窗口过程在调用BeginPaint() 时发MSG_ERASEBKGND过行窗口背景重绘,可以在些消中实现自己想要的窗口背景。
如果在MSG_PAINT中没有BeginPaint() 和EndPaint() 时,系统会一直向窗口发MSG_PAINT消息,进入死循状态。BeginPaint() 和EndPaint() 只在MSG_PAINT中调用。