【发布时间】:2016-06-29 11:49:25
【问题描述】:
我一直在开发一个应用程序。我想检查窗口位置是否改变。我不想总是阅读窗口的位置。而不是它,我需要一个在用户移动窗口时触发的方法。
能找到吗?
PS:窗口不在我的程序中,它是一个外部应用程序,我使用一些 API 函数来控制窗口。
【问题讨论】:
我一直在开发一个应用程序。我想检查窗口位置是否改变。我不想总是阅读窗口的位置。而不是它,我需要一个在用户移动窗口时触发的方法。
能找到吗?
PS:窗口不在我的程序中,它是一个外部应用程序,我使用一些 API 函数来控制窗口。
【问题讨论】:
最好使用WinEvents 来完成。要收听的Event Constant 是EVENT_OBJECT_LOCATIONCHANGE:
对象的位置、形状或大小发生了变化。系统为以下用户界面元素发送此事件:插入符号和窗口对象。
【讨论】:
EVENT_OBJECT_LOCATIONCHANGE 不适用于命令提示符 (cmd.exe),它也不会像所有其他窗口一样触发 EVENT_OBJECT_DESTROY。有什么建议吗?