小甲鱼 发表于 2014-5-15 23:47:59

UpdateWindow

函数功能:

UpdateWindow 函数绕过应用程序的消息队列,直接发送 WM_PAINT 消息给指定窗口的窗口过程。

如果窗口更新的区域不为空,UpdateWindow 函数通过发送一个 WM_PAINT 消息来更新指定窗口的客户区。如果更新区域为空,则不发送消息。


API 函数原型:

BOOL UpdateWindow(
_In_HWND hWnd
);

参数解析:


参数 含义
hWnd 指定要更新的窗口的句柄.


返回值:

1. 如果函数调用成功,返回值为非 0;

2. 如果函数调用不成功,返回值为 0。

【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。


WinSDK

E=MC2 发表于 2014-5-16 08:53:02

这些API档案是不是要记住啊?{:7_180:}

小甲鱼 发表于 2014-5-16 17:34:58

E=MC2 发表于 2014-5-16 08:53 static/image/common/back.gif
这些API档案是不是要记住啊?

不用啊,用到来查就行~

秦晓彬 发表于 2014-5-23 23:33:31

话说,为什么我把update window 这个函数注释掉,程序没有什么反应呀,:cry:cry

小甲鱼 发表于 2014-5-26 18:26:31

秦晓彬 发表于 2014-5-23 23:33 static/image/common/back.gif
话说,为什么我把update window 这个函数注释掉,程序没有什么反应呀,
UpdateWindow 是直接发送 WM_PAINT 消息给窗口过程,注意,这里是直接发送,就是让窗口过程立即执行 WM_PAINT 的动作。(把断点下在 UpdateWindow 这里,这一句没有被执行的时候,并不会显示文字)

如果不是通过 UpdateWindow 来发送 WM_PAINT 消息,操作系统也会自动检测窗口是否需要重绘而将 WM_PAINT 消息投入消息队列(具体请看第四讲),但是投放到消息队列里的 WM_PAINT 消息是级别极低的,必须等到消息队列中所有的消息都执行完毕才会执行。

因此,如果屏蔽了 UpdateWindow,同时消息队列又一直有新消息,那么 WM_PAINT 就不会被调用到。

秦晓彬 发表于 2014-5-26 20:27:32

小甲鱼 发表于 2014-5-26 18:26 static/image/common/back.gif
UpdateWindow 是直接发送 WM_PAINT 消息给窗口过程,注意,这里是直接发送,就是让窗口过程立即执行 WM_P ...

嗯,受教了,弱弱的问一下,为什么我修改的程序不能发声呢,在createwm 里面使用playsound这个函数,应该可以发声的呀,{:5_100:}

小甲鱼 发表于 2014-5-27 22:32:19

秦晓彬 发表于 2014-5-26 20:27 static/image/common/back.gif
嗯,受教了,弱弱的问一下,为什么我修改的程序不能发声呢,在createwm 里面使用playsound这个函数,应该 ...

winmm.lib 库有没有包含进去

Azazel 发表于 2014-11-30 19:57:34

:victory:

HALLDY 发表于 2015-2-15 18:49:31

为什么我的UpdateWindow函数不刷新页面啊?@小甲鱼

gaoshua3011 发表于 2016-10-8 21:02:59

努力爬楼中,老师讲的真棒。

hustjinghu 发表于 2016-10-20 08:54:18

受教了,太感谢分享了,没搞清的知识点终于搞清楚了,UpdateWindow没有执行,窗口过程函数中的WM_PAINT消息处理就没有调用,文字就显示不出来,一旦UpdateWindow调用,那么Windows就会发送非队列的WM_PAINT给窗口过程函数;如果不调用UpdateWindow,那么如果消息队列中有N个消息在处理,也就是需要很长时间才能看到文字显示出来。
同样道理,在动态绘图过程也是类似的,当数据更新后,就需要View也更新,需要系统发送WM_PAINT的消息到窗口过程函数,而不是一直等待。
那么又存在一个疑问:UpdateWindow和InvalidateRect都能使得Windows发送WM_PAINT到窗口过程,二者这方面有什么区别呢?

谦虚求学 发表于 2016-10-20 12:04:02

{:5_109:}

boqianlv 发表于 2020-1-15 09:43:42

Krypt0n 发表于 2020-7-1 18:23:07

小鱼这个网站可要一直存在啊,要是以后查参数发现不再了,就不好啦{:10_266:}
页: [1]
查看完整版本: UpdateWindow