相关疑难解决方法(0)

KeyTypedEvent KeyEvent的KeyCode始终为0?

我在NetBeans IDE中有一个Java Swing应用程序.

我创建了一个表单并将KeyListener附加到我的各种控件中:

    jButton1.addKeyListener(new java.awt.event.KeyAdapter() {
        public void keyTyped(java.awt.event.KeyEvent evt) {
            keyTypedEvent(evt);
        }
    });
Run Code Online (Sandbox Code Playgroud)

并keyTypedEvent定义为:

private void keyTypedEvent(java.awt.event.KeyEvent evt) 
{                               
System.out.println(evt);
appendDisplay(String.valueOf(evt.getKeyChar()));
} 
Run Code Online (Sandbox Code Playgroud)

我添加了一个println,evt看看会发生什么,并验证我的keylistener确实有效.当我构建并运行我的应用程序时,我意识到输出总是似乎有一个keycode = 0

为了验证这一点,我把println改为了evt.getKeyCode(),它总是返回0.

我可能完全误解了KeyCode的功能,但我认为它可以与Oracle文档中的值进行协调:

http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.awt.event.KeyEvent.VK_ESCAPE

例如,VK_ESCAPE的值为27.

java swing keyevent keylistener

16
推荐指数
1
解决办法
2万
查看次数

Java中的键绑定与键侦听器

我注意到在Java/Swing中,似乎至少有两种不同的方法来处理关键事件:

每个人的优点/缺点是什么,何时你更喜欢一个而不是另一个?

java swing key-events keylistener key-bindings

10
推荐指数
2
解决办法
7103
查看次数

键入JTextField可启用按钮.使用KeyListener是错误的吗?

我有一个名为"保存更改"的按钮,如果在JTextField组件中检测到任何更改,它将保存所有更改.现在,我假设如果用户键入任何内容,则内容已更改.

我正在使用KeyListener,但从这个问题来看,它听起来像使用除了ActionListener错误之外的任何东西?

java swing jtextfield

3
推荐指数
1
解决办法
173
查看次数