我试图制作一个KeyEventListener但它从不打印任何东西。我已经有一个主要课程,我是否需要注册"还是什么?
package client;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
public class KeyEventListener implements KeyListener
{
@Override
public void keyPressed(KeyEvent arg0)
{
System.out.print("HI1");
}
@Override
public void keyReleased(KeyEvent arg0)
{
System.out.print("HI2");
}
@Override
public void keyTyped(KeyEvent arg0)
{
System.out.print("HI3");
}
}
答案 0 :(得分:2)
AWT / Swing组件必须是焦点或焦点所有者在窗口中,否则永远不会对关键事件和顶级容器作出反应
不要在没有重要原因的情况下使用KeyListener,例如同时按下三个或更多个键,e.i。
让Swing使用KeyBindings,因为KeyListener没有为Swing JComponents指定或者与KeyBindings相比引起了一些副作用
更多信息,inc。在Oracle教程中使用代码示例,请在此处查找其他详细信息或详细说明
更快地发布SSCCE,简短,可运行,可编辑