要修改另一个程序的窗口,我需要使用 EnumChildWindows
API 调用在其中找到特定的 SysTreeView32
。
当我使用 Spy++ 检查窗口时,其中有许多 SysTreeView32
,但除了我正在寻找的一个以外,所有的都是灰色的。
下图是灰色项的例子:
为什么显示的项目是灰色的?Spy++ 使用什么 API 调用来知道它是否应该使项目变灰?
最佳答案
那些只是不可见的窗口——即没有设置 WS_VISIBLE 样式位的 HWND。它们通常是工作窗口——仅用于在后台处理各种消息的窗口——或者在某些情况下是尚未可见的 UI。例如,一个允许您隐藏或显示工具栏的窗口可能只是通过使其不可见来隐藏它,而不是销毁它并在以后重新创建它。
在您的特定情况下,WorkerW 可能是当前不需要的其他一些 UI 的占位符,而 msctl_statusbar32 看起来像是一个隐藏的状态栏。
关于windows - 为什么有些项目在 Spy++ 的 Windows View 中显示为灰色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6936283/