|
发表于 2020-8-3 19:00:01
|
显示全部楼层
InvalidatedRect
使一个矩形无效,需要重绘该矩形,在该矩形做一个重绘的标记,当下一次WM_PAINT发出的时候,该矩形被重绘.
使显示矩形区无效,WM_PAINT会对无效的区域重画
函数中的参数TRUE表示系统会在你画之前用背景色将所选区域覆盖一次,默认背景色为白色,可以通过设置BRUSH来改变背景色。
UpdateWindow
强制发出一个WM_PAINT消息
会发送一条WM_PAINT,但不进入消息队列,呼叫立即更新窗口
只向窗体发送WM_PAINT消息,在发送之前判断GetUpdateRect(hWnd,NULL,TRUE)看有无可绘制的客户区域,如果没有,则不发送WM_PAINT
如果希望立即刷新无效区域,可以在调用InvalidateRect之后调用UpdateWindow,如果客户区的任一部分无效,
则UpdateWindow将导致Windows用WM_PAINT消息调用窗口过程(如果整个客户区有效,则不调用窗口过程)。
这一WM_PAINT消息不进入消息队列,直接由WINDOWS调用窗口过程。窗口过程完成刷新以后立刻退出,
WINDOWS将控制返回给程序中UpdateWindow调用之后的语句。
|
|