Java粘贴到当前光标位置

时间:2009-10-10 23:08:27

标签: java desktop

我想制作简单的java程序,将一些文本插入当前光标位置。该光标位置可以在任何文本编辑器中,例如记事本。这可能吗?

3 个答案:

答案 0 :(得分:1)

使用this article作为复制/粘贴的基础,您可能会发现只能将某些内容放入剪贴板,但不能直接更改外部进程文本框的内容。

您可能希望获取该框的窗口句柄并使用Windows API向其发送消息。这只适用于Windows,我不知道在Mac OS / Linux上是否有相同的方法。也许这甚至不能直接从java工作。您需要键入一些C / C ++代码并使用Java Native Interface (JNI)

问候

答案 1 :(得分:1)

这是一个黑客攻击,但请查看java.awt.Robot。它允许您以编程方式在许多其他有用的东西中进行鼠标点击和按键操作。因此,一种方法是:

  1. 使用Atmocreations的文章将文字放入剪贴板
  2. 如果要粘贴它,请使用Robot点击当前位置(如果需要给予该字段焦点)
  3. 使用Robot按Ctrl-V(或系统所需的任何粘贴效果)
  4. 就像我说的那样,它根本不是一个干净的解决方案,但它会起作用。

答案 2 :(得分:0)

如果你要求当前光标位置,我想你应该使用它:

Display.getCurrent().getCursorLocation()

拥有光标位置,下一步需要做进一步的细节。如果你想自动将一些文本写入外国应用程序,如Word或Notepad,这对我来说听起来更像病毒..