【问题标题】:How do I verify that a window is the topmost window using UIAutomation?如何使用 UIAutomation 验证窗口是最顶层的窗口?
【发布时间】:2012-05-24 13:32:51
【问题描述】:
我在许多论坛中搜索过解决方案,但他们都告诉我,如果窗口在顶部,则使用 WindowPattern 并检查最顶部的值应该返回 true。然而,这对我来说不是这样。我正在测试一个位于 outlok 选项卡中的应用程序。然后,用户可以在应用程序中单击并打开一个新窗口。我想验证这个窗口是否在前台。另外..这是一个 WPF 应用程序,因此我无法为打开的新窗口获取单独的句柄。
谢谢
【问题讨论】:
标签:
ui-automation
foreground
topmost
【解决方案1】:
这可能是一个术语问题:'Topmost' 在 Win32 (See description of WS_EX_TOPMOST here) 中具有特殊含义,基本上意味着“浮动在其他普通窗口之上” - 它通常用于工具提示、菜单弹出窗口、通知气球和之类的,它们漂浮在屏幕上的所有其他窗口之上。它很少通过实际的应用程序窗口。
一个应用程序可以是当前前台窗口,在其他窗口之上,但没有这个属性。
查看窗口是否在前台的另一种方法是查看它是否是或包含当前焦点或活动窗口。