试图从我的 WPF 应用程序(它只是通过系统托盘运行)挖掘 win32 api。
当单击系统托盘图标时,我会向用户显示一个上下文菜单,该菜单会在最顶部的任何窗口上获得焦点。
我想处理那个窗口(那个刚刚失去焦点的窗口)并尝试使用不同的方法
GetForeGroundWindow()
GetTopWindow()
GetDesktopWindow()
然而没有尽头。我目前正在考虑遍历所有进程,以获取 MainWindowHandles 并检查每个窗口的 z 顺序。
但我认为有一种更简单/更智能的方法。只是我无法从我的旧 Petzold 书籍中搜索或回忆的一本。
另一种方法是让我的系统托盘菜单在激活时不获得焦点?
谢谢!