Java 区域转移焦点

Java 区域转移焦点,java,swing,focus,jtextarea,keylistener,Java,Swing,Focus,Jtextarea,Keylistener,当用户点击选项卡时,我试图将焦点从一个JTextArea转移到另一个JTextArea。 目前我正在使用以下代码: public void keyTyped(KeyEvent e) { if(e.getKeyChar() == KeyEvent.VK_TAB){ enterTextArea.transferFocus(); } } 这似乎是可行的-焦点移动,您在下一个JTe

当用户点击选项卡时,我试图将焦点从一个JTextArea转移到另一个JTextArea。 目前我正在使用以下代码:

public void keyTyped(KeyEvent e) {                  
        if(e.getKeyChar() == KeyEvent.VK_TAB){
            enterTextArea.transferFocus();
        }               
}
这似乎是可行的-焦点移动,您在下一个JTextArea中键入-但实际上文本仍然会出现在第一个TextArea中,这意味着在第二个TextArea上执行getText()只会返回

如何使键入的文本转到第二个JTextArea,而不只是附加到第一个JTextArea


编辑:进一步检查时,此行为是由单独的错误引起的。无需更多帮助。

您只需在第一个文本上使用getText将文本从1传输到2即可

public void keyTyped(KeyEvent e) {                  
    if(e.getKeyChar() == KeyEvent.VK_TAB){
        enterTextArea.transferFocus();
        String firstField = textField1.getText();
        secondField.setText(firstField);
    }               
}
这样,它将从第一个文本区域保存,并将其放入第二个文本区域


希望这有帮助

TAB内置于API中的KeyEvent中,是常用的快捷键,适用于多种编程语言的应用,不易混淆用户