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

public class Main {
    static boolean check = false;
    static boolean boom = true;

    public static void main(String[] args) throws Exception{
        do{
        if(check == true){
            Robot r = new Robot();
            r.delay(1000);
            r.keyPress(KeyEvent.VK_DECIMAL);
            r.keyRelease(KeyEvent.VK_DECIMAL);
            r.keyPress(KeyEvent.VK_M);
            r.keyRelease(KeyEvent.VK_M);
            r.keyPress(KeyEvent.VK_E);
            r.keyRelease(KeyEvent.VK_E);
            r.keyPress(KeyEvent.VK_N);
            r.keyRelease(KeyEvent.VK_N);
            r.keyPress(KeyEvent.VK_U);
            r.keyRelease(KeyEvent.VK_U);
            r.keyPress(KeyEvent.VK_ENTER);
            r.keyRelease(KeyEvent.VK_ENTER);
        }
        }while(boom == true);
    }

    public void keyPressed(KeyEvent e){
        int keyCode = e.getKeyCode();
        if(keyCode == KeyEvent.VK_F9){
            check = true;
            boom = true;
        }
        if(keyCode == KeyEvent.VK_F11){
            check = false;
            boom = false;
        }
    }
}

This is my code,I want it work like this: When you press F9 it should start write .menu and when pressing F11 it should stop. Any Help?

4

1 回答 1

3

您没有可供 KeyListener 收听的 GUI 组件。KeyListener 要求将它们添加到呈现的 GUI 内的组件中,并且被侦听的组件具有焦点。您的应用程序没有这些。我什至在您的代码中的任何地方都没有看到 KeyListener 对象。

如果您想创建一个监听键事件的 GUI,请考虑在Swing 教程中学习如何创建 Java Swing GUI ,然后考虑使用键绑定来代替低级监听器,例如 KeyListener。

另一方面,如果您希望创建一个没有 GUI 的通用按键记录程序,那么我建议您不要使用 Java,而是使用其他允许与操作系统更紧密集成的语言。

于 2013-08-11T14:40:50.240 回答