3

当我发送WM_SETREDRAW以禁用窗口重绘时,完成后如何“恢复”以前的状态?

发送此消息的正确方法是什么?

4

2 回答 2

3

您无法恢复以前的状态,因为无法访问当前状态。没有WM_GETREDRAW。完成后,这次您WM_SETREDRAW再次发送TRUE作为参数,如果其他人FALSE在外部范围上设置了重绘,那么好吧..这对他们不利..

于 2012-06-06T02:05:19.250 回答
1

之前的答案已经过时了。现在可以检查调用DefWindowProc. (请注意,这可能包括您感兴趣的常见控制。)

来自 MSDN

Windows 10 及更高版本;Windows Server 2016 及更高版本。系统在窗口过程将消息传递到SysSetRedraw的窗口上设置一个名为的属性。您可以使用该函数在可用时获取属性值。禁用重绘时返回非零值。启用重绘或 window 属性不存在时将返回零。WM_SETREDRAWDefWindowProcGetPropGetPropGetProp

于 2021-09-04T09:28:18.073 回答