【问题标题】:Windows Message for all resizing actions所有调整大小操作的 Windows 消息
【发布时间】:2014-09-22 18:08:02
【问题描述】:

是否有人知道在调整大小事件结束时发送的消息(例如双击应用栏、最大化按钮单击、拖动到屏幕顶部……),一个很好的例子是 WM_EXITSIZEMOVE,但它是仅在窗口大小栏拖动结束时。

所以我的问题是,它是否存在在任何大小调整事件发生时被调用的消息,在它的末尾(不像 WM_SIZE)?

【问题讨论】:

    标签: winapi resize message wndproc


    【解决方案1】:

    您将收到一条WM_WINDOWPOSCHANGED 消息,其中SWP_NOSIZE 标志在任何调整事件结束时被清除。除了WM_EXITSIZEMOVE 之外,没有其他消息表明调整已完成,这表明模态移动/调整循环的结束。如果你得到WM_WINDOWPOSCHANGED 而之前没有得到WM_ENTERSIZEMOVE,那么你可以假设你没有被模态地调整大小。

    【讨论】:

    • 对使用此技术检测 client 大小变化以及 window 大小变化的任何人的提示:同时收听 SWP_FRAMECHANGED 以说明添加/删除菜单、添加/删除滚动条或从重叠更改边框 -> 弹出窗口,反之亦然。
    猜你喜欢
    • 2016-11-10
    • 1970-01-01
    • 2013-10-27
    • 2023-04-08
    • 1970-01-01
    • 2011-02-20
    • 2014-12-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多