gpt4 book ai didi

winapi - 检测前景窗口何时发生变化

转载 作者:行者123 更新时间:2023-12-03 14:52:50 25 4
gpt4 key购买 nike

我知道使用 GetForegroundWindow 函数我可以获取当前事件窗口句柄,但现在 i want to detect when the active window (of any application) changes (become active) 。我想到的第一个解决方案是

  1. 存储 GetForegroundWindow 函数返回的当前值(句柄)。
  2. 使用计时器组件再次检查 GetForegroundWindow 返回的值并与旧值进行比较。

我想知道是否存在更好的方法来做到这一点,可能使用 Windows 消息或其他东西。

最佳答案

使用SetWindowsHookEx安装 CBT Hook 。 MSDN 描述了callback function您将提供:

The system calls this function before activating, creating, destroying, minimizing, maximizing, moving, or sizing a window; before completing a system command; before removing a mouse or keyboard event from the system message queue; before setting the keyboard focus; or before synchronizing with the system message queue. A computer-based training (CBT) application uses this hook procedure to receive useful notifications from the system.

您感兴趣的调用是第一个参数为 HCBT_Activate 的调用。 wParam 参数将告诉您窗口句柄。

关于winapi - 检测前景窗口何时发生变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5876151/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com