处理(消费)按键

时间:2017-06-18 13:51:02

标签: java swing events keyboard

在C#编写了几年后,我开始玩java了一点点。我想要实现的是处理jTextField的按键事件。

在C#中我会编码:

e.Handled = true;

我做了一些研究并读到我可以在java中使用consume()。所以我写了下面的代码:

    if (evt.getKeyChar() == '.' || DataController.getInstance().isDot_pressed()) 
    {
        jTextFieldQuery.setText(DataController.getInstance().generateText(jTextFieldQuery.getText()));

        if(evt.getKeyChar()!='.')
        {
            DataController.getInstance().setOdgovor(DataController.getInstance().getOdgovor()+evt.getKeyChar());
        }
        else
        {
            DataController.getInstance().setDot_pressed(!DataController.getInstance().isDot_pressed());
        }

        evt.consume();
    }
}

此代码应处理"。"的关键压力。并且每次按键直到另一个"。#34;在它加载文本字段中的预定义文本的同时按下。 这个解决方案不起作用,它消耗(处理)例如删除按钮但它不处理正常字母。

有什么建议吗?感谢。

0 个答案:

没有答案