2

我有一个 java Robot 程序,它可以在记事本、单词等上输入一个单词。

但问题是我没有获得窗口应用程序的焦点,当我尝试使用ALT-TAB手动在其文本框中输入光标时,

并且该应用程序在列表中不可用,在执行 ALT-TAB 时,它在任务管理器-> 应用程序选项卡中也不可见, 但它在任务管理器的进程选项卡中可用。是否有任何解决方案可以使用 Java Robot 获得该 Windows 应用程序的 keyPress 焦点。

此外,在其他一些 PC 上,当我在运行 java 机器人程序后手动放置光标时,我得到了应用程序的清晰焦点。我已经在我所有的 PC 上安装了JDK1.6。它不仅适用于我的电脑。

提前致谢!!

4

2 回答 2

1

您可以将机器人置于后台,而不是获取其他应用程序的焦点,返回之前在前台(即您的目标应用程序)中的任何内容以获取焦点。

于 2012-10-29T02:45:17.800 回答
1

我认为您最好的选择是使用 JNA 来允许您进行系统调用。

假设是一个 Windows 程序,您可以使用 JNA 调用 user32.dll,包括 dll 函数,FindWindowEx(...)并将SetForegroundWindow(...)您选择的窗口设置为前台。

于 2012-10-29T02:56:56.120 回答