键绑定功能不正常java

时间:2016-10-15 22:51:50

标签: java multithreading swing

我正在编写一个只听取按键操作的课程。我正在使用它与JFrame,所以我使用键绑定。 getWindow()方法返回一个JFrame窗口,该窗口已经创建并且工作正常。但是,键绑定要么不起作用,要么未调用操作。

无论如何,这是我的代码,keys.java:

import javax.swing.*;
import java.awt.event.*;
import java.awt.*;

public class keys extends Thread{
        private JFrame window;

        public keys(){
                snake getInfo = new snake();
                window = getInfo.getWindow();
        }

        public void run(){
                System.out.println("keys us called");
                Action pressed = new AbstractAction(){
                        public void actionPerformed(ActionEvent e){
                                System.out.println("working");
                        }
                };
                JPanel content = (JPanel)window.getContentPane();
                content.getInputMap().put(KeyStroke.getKeyStroke("SPACE"), "pressed");
                content.getActionMap().put("pressed", pressed);
        }
}

Keys在一个单独的线程上运行,以便程序可以继续。我还没有用java编写很长时间,所以如果这是一个荒谬的问题,我很抱歉。我也从未使用过键绑定。提前感谢您的帮助。

0 个答案:

没有答案