使用 Win32 API(在 C 中,但这无关紧要),我如何判断给定窗口(由 HWND 标识)是否具有焦点?
我正在 Hook 一个应用程序来监视一个事件,当该事件发生时,我想检查该应用程序是否已经获得焦点。如果没有,我想闪烁窗口,直到他们聚焦它。
或者,如果窗口已经有焦点,FlashWindowEx 结构标志 FLASHW_TIMERNOFG 是否会闪烁直到窗口有焦点才不闪烁?
我现在无法测试它,因为我不在我的开发环境中,但我的印象是它无论如何都会闪烁,这是我试图避免的。
此外,如果重要的话,应用程序会在此窗口中使用 DirectX。
最佳答案
GetActiveWindow将返回与输入焦点关联的顶层 窗口。 GetFocus将返回具有输入焦点的窗口的句柄。
这篇文章可能对您有所帮助:
http://www.microsoft.com/msj/0397/Win32/Win320397.aspx
关于windows - 如何判断窗口是否有焦点? (Win32 API),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/466354/