1.在用户移动窗口或显示窗口时,窗口中先前被隐藏的区域重新可见
2.用户改变窗口的大小(如果窗口类风格且有CS_HREDRAW和CS_VREDRAW位设置)
3.程序使用ScrollWindow或ScrollDC函数滚动客户区的一部分
4.程序使用InvalidateRect或InvalidateRgn函数显式产生WM_PAINT消息。
在某些情况下,客户区的一部分被临时覆盖,Windows试图保存一个显示区域,并在以后恢复它,但这并不总是能成功的,下面的情况下,Windows可能发送WM_PAINT消息:
1.Windows擦除覆盖了部分窗口的对话框或消息框
2.菜单下拉出来,然后被释放
3.显示工具提示
在某些情况下,Windows总是保存它所覆盖的显示区域,然后恢复它。这些情况是:
1.鼠标光标穿越客户区
2.图标拖过客户区