Java 在激活文本光标的位置写入文本(就像屏幕上的键盘一样)

Java 在激活文本光标的位置写入文本(就像屏幕上的键盘一样),java,Java,这个问题可能很奇怪。但我正在努力让它明白。我正在尝试用java制作一个屏幕键盘。它应该在光标被激活的位置写入字符。就像打开一个MicrosoftWord文件一样,我想用键盘在该word文件中写入内容。可能我正在visual studio中编写代码,我将通过单击键盘上的键在visual studio中编写代码。我如何用键盘在其他应用程序中写字。有人能告诉我这方面的想法吗?提前谢谢。 我已经用swing制作了键盘布局(字母和数字字符)。您可以使用Robot类 这有两种方法,keyPress和key

这个问题可能很奇怪。但我正在努力让它明白。我正在尝试用java制作一个屏幕键盘。它应该在光标被激活的位置写入字符。就像打开一个MicrosoftWord文件一样,我想用键盘在该word文件中写入内容。可能我正在visual studio中编写代码,我将通过单击键盘上的键在visual studio中编写代码。我如何用键盘在其他应用程序中写字。有人能告诉我这方面的想法吗?提前谢谢。
我已经用swing制作了键盘布局(字母和数字字符)。

您可以使用Robot类

这有两种方法,keyPress和keyRelease,您必须调用它们来模拟按键

这可以称为传入KeyEvent常量

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_A);

您可以使用Robot类

这有两种方法,keyPress和keyRelease,您必须调用它们来模拟按键

这可以称为传入KeyEvent常量

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_A);
robot.keyRelease(KeyEvent.VK_A);

您有一系列复杂的问题,主要围绕键盘焦点

主要问题是,一旦单击窗口中的某个按钮,该窗口将被聚焦,而该按钮将成为键盘焦点的活动接收者,这意味着您试图在任何地方发送击键的任何尝试都将被您刚才单击的按钮消耗

最简单的方法是使用
JButton\setFocusable
并将其传递给
false
,使所有按钮都不可聚焦

要以编程方式向活动窗口发送击键,可以使用

例如

Robot bot = new Robot();
bot.setAutoDelay(100); // I find a small delay between events helps a lot...
bot.keyPress(KeyEvent.VK_A);
bot.keyRelease(KeyEvent.VK_A);

您可能还想看看,您有一系列复杂的问题,主要围绕键盘焦点

主要问题是,一旦单击窗口中的某个按钮,该窗口将被聚焦,而该按钮将成为键盘焦点的活动接收者,这意味着您试图在任何地方发送击键的任何尝试都将被您刚才单击的按钮消耗

最简单的方法是使用
JButton\setFocusable
并将其传递给
false
,使所有按钮都不可聚焦

要以编程方式向活动窗口发送击键,可以使用

例如

Robot bot = new Robot();
bot.setAutoDelay(100); // I find a small delay between events helps a lot...
bot.keyPress(KeyEvent.VK_A);
bot.keyRelease(KeyEvent.VK_A);

您也可以查看一下,并

感谢您的回答。它起作用了。但是你能告诉我如何使用bot.mousePress()方法吗?因为我键盘上的所有字符都是jbutton。他们都创建了ActionListener。你是什么意思?有一个例子谢谢你的回答。它起作用了。但是你能告诉我如何使用bot.mousePress()方法吗?因为我键盘上的所有字符都是jbutton。他们都创建了ActionListener。你是什么意思?有一个例子