【发布时间】:2011-05-27 12:35:27
【问题描述】:
如果我按下热键,我想创建一个可以复制工具提示(显示在当前桌面/窗口上的工具提示)的应用程序。那么如何跟踪当前桌面是否有工具提示。
【问题讨论】:
-
您不能直接使用 Print Screen 来截取屏幕截图吗?似乎是一个奇怪的要求。
标签: c# tooltip diagnostics
如果我按下热键,我想创建一个可以复制工具提示(显示在当前桌面/窗口上的工具提示)的应用程序。那么如何跟踪当前桌面是否有工具提示。
【问题讨论】:
标签: c# tooltip diagnostics
首先,无法使用 Managed.Net API 访问其他应用程序中的窗口,因此您必须做一些不同的事情。
我猜你可以使用 Win32 API 来枚举窗口并找到 Tooltip_Class32 类的窗口。然后你必须阅读他们的文字。
您可以按照 SO here 和 PInvoke.net here 上的说明枚举窗口。
如果您仅限于 Tooltip_Class32,那么您将只能获得工具提示窗口。
我不确定 Windows 如何构建工具提示。我猜您可以使用SendMessage API 和WM_GETTEXT 消息(如here)从工具提示或某些子控制窗口中读取文本。
这应该让你开始,我自己从来没有真正做过,但它似乎是可行的。
【讨论】: