使用JAVA在控制台外打印

时间:2014-07-13 08:14:26

标签: java c# windows

我是初学程序员。提前抱歉,如果我的问题最终听起来很荒谬,但我想知道我想做什么是可能的。如果是,请告诉我我需要学习的东西。

我想编写一个Java程序来检测关键输入(在Windows上)的组合,例如control + e,并将重音e输出到任何程序,特别是文字处理器。这有可能用Java开发吗?如果没有,我是否必须在c#中创建该程序?

提前谢谢。我真的不知道从哪里开始。

2 个答案:

答案 0 :(得分:0)

此示例代码将显示使用Robot类来处理键盘事件。如果您运行此代码并打开记事本,那么此代码将在记事本中写下你的budy。

import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;

public class RobotExp {

public static void main(String[] args) {

try {

  Robot robot = new Robot();
     // Creates the delay of 5 sec so that you can open notepad before
     // Robot start writting
  robot.delay(5000);
  robot.keyPress(KeyEvent.VK_H);
  robot.keyPress(KeyEvent.VK_I);
  robot.keyPress(KeyEvent.VK_SPACE);
  robot.keyPress(KeyEvent.VK_B);
  robot.keyPress(KeyEvent.VK_U);
  robot.keyPress(KeyEvent.VK_D);
  robot.keyPress(KeyEvent.VK_Y);

} 
catch (AWTException e) {
  e.printStackTrace();
}
}
} 

答案 1 :(得分:0)

当然可以等待键盘的输入。 只需打开Inputstream即可:

BufferedReader br = new BufferedReader(new InputStream(System.in)));

然后阅读BufferedReader给你的例子:

String line;
while(line = br.readLine() != "your code to stop the programm"){
} 

然后检查是否按下 CTRL + E 并打印到另一个程序。

现在尝试完成此操作并稍微玩弄它。