【发布时间】:2012-02-07 10:20:27
【问题描述】:
所以,我基本上想在文本字段中输入一个字母,然后让机器人响应并输入按键。我已经按照我想象的方式编写了这段代码,但它没有,而且我有点想不通。
package robottest;
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
public class RobotTest extends JFrame
{
JTextField bookIDText;
public RobotTest()
{
try
{
Robot robot = new Robot();
bookIDText = new JTextField ();
this.add(bookIDText);
String words = bookIDText.getText().toString();
if (words == "W")
{
robot.keyPress(KeyEvent.VK_H);
}
}
catch (AWTException e)
{
e.printStackTrace();
}
}
public static void main(String[] args)
{
RobotTest frame = new RobotTest();
frame.pack();
frame.setVisible(true);
frame.setResizable( false );
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
【问题讨论】:
-
您为什么希望它能够工作?您实际上从不等待按键被按下(或任何其他事件)。
-
使用
equals()比较字符串,而不是==。
标签: java swing keypress jtextfield awtrobot