我知道哪个使用GetForegroundWindow函数我可以获得当前活动窗口句柄,但现在i want to detect when the active window (of any application) changes (become active).我想到的第一个解决方案是
我想知道是否存在更好的方法来执行此操作可能使用Windows消息或其他东西.
使用SetWindowsHookEx安装CBT钩子.MSDN描述了您将提供的回调函数:
系统在激活,创建,销毁,最小化,最大化,移动或调整窗口大小之前调用此函数; 在完成系统命令之前; 从系统消息队列中删除鼠标或键盘事件之前; 在设置键盘焦点之前; 或者在与系统消息队列同步之前.基于计算机的培训(CBT)应用程序使用此挂钩过程从系统接收有用的通知.
您感兴趣的调用是第一个参数所在的调用HCBT_Activate.该wParam参数将告诉您窗口句柄.
| 归档时间: |
|
| 查看次数: |
2334 次 |
| 最近记录: |