jjzjj

Java JTextArea KeyListener

coder 2024-03-16 原文

当我按下 ENTER 时,我的 JTextArea 开始了一个新行,我只想对 doClick() 方法做任何其他事情。 我应该怎么做?

textarea.addKeyListener(new KeyListener(){
    @Override
    public void keyPressed(KeyEvent e){
        if(e.getKeyCode() == KeyEvent.VK_ENTER){
        button.doClick();
        }
    }

    @Override
    public void keyTyped(KeyEvent e) {
    }

    @Override
    public void keyReleased(KeyEvent e) {
    }
});

最佳答案

使用.consume():

Consumes this event so that it will not be processed in the default manner by the source which originated it.

public void keyPressed(KeyEvent e){
    if(e.getKeyCode() == KeyEvent.VK_ENTER){
    e.consume();
    button.doClick();
    }
}

Documentation

关于Java JTextArea KeyListener,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18483813/

有关Java JTextArea KeyListener的更多相关文章

随机推荐