WM_PAINT 消息

第一个 WM_PAINT 消息:
大多数 Windows 程序在 WinMain 中进入消息循环之前的初始化期间都要调用函数 UpdateWindow。Windows(操作系统) 利用这个机会给窗口过程发送第一个WM_PAINT消息。这个消息通知窗口过程:必须绘制客户区。

在发生下面几种事件之一时,窗口过程会接收到一个WM_PAINT消息:
在用户移动窗口或显示窗口时,窗口中先前被隐藏的区域重新可见;
用户改变窗口的大小(如果窗口类风格具有 CS_HREDRAW 和 CS_VERDRAW 位设置);
程序使用 ScrollWindow 或 ScrollDC 函数滚动客户区的一部分;
程序使用 InvalidateRect 或 InvalidateRgn 函数显示产生 WM_PAINT 消息。

在某些情况下,客户区的一部分被临时覆盖,Windows 试图保存一个显示区域,并在以后恢复它,但这并不总是能成功的。下面的情况下,Windows 可能会发送 WM_PAINT 消息:
Windows 擦除覆盖了部分窗口的对话框或消息框;
菜单下拉出来,然后被释放;
显示工具提示。

在某些情况下,Windows 总是保存它所覆盖的显示区域,然后恢复它。这些情况是:
鼠标光标穿越客户区;
图标拖过客户区。



posted on 2011-12-16 10:54 梦五 阅读(269) 评论(0)  编辑 收藏 引用 所属分类: Windows相关


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


<2024年4月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

导航

统计

常用链接

留言簿

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜