어쨌든 캐럿 위치가 이전에 없었던 JTextArea에서 캐럿 위치를 설정할 수 있습니까? KeyEvent.VK_ENTER에서 KeyListener를 사용하여 JTextArea에 텍스트를 추가하고 텍스트를 JTextArea에 추가하는 위치의 한 줄 아래에 캐럿 위치를 설정하고 싶습니다.캐럿이 JTextArea에없는 캐럿 위치 설정
건배,
테일러
어쨌든 캐럿 위치가 이전에 없었던 JTextArea에서 캐럿 위치를 설정할 수 있습니까? KeyEvent.VK_ENTER에서 KeyListener를 사용하여 JTextArea에 텍스트를 추가하고 텍스트를 JTextArea에 추가하는 위치의 한 줄 아래에 캐럿 위치를 설정하고 싶습니다.캐럿이 JTextArea에없는 캐럿 위치 설정
건배,
테일러
를 통해 JTextArea에의 끝으로 커서를 전진
textArea.append("\n");
를 통해 JTextArea에에 새 줄을 추가 : 단순히 그렇게, 새로운 라인을 추가하려면 .VK_ENTER
KeyListener를 사용하지 마십시오. Swing은 Key Bindings와 함께 사용하도록 설계되었습니다. 자세한 내용은 How to Use Key Bindings에있는 스윙 튜토리얼의 섹션을 읽어보십시오.
텍스트를 JTextArea에 추가 할 위치의 한 줄 아래에 캐럿 위치를 설정하십시오.
텍스트를 추가 할 때 텍스트 영역에 "\ n"을 추가했는지 확인하십시오. 그럼 그냥 사용할 수 있습니다 :
textArea.setCaretPosition(textArea.getDocument().getLength());
setCaretPosition(...)
궁극적 인 목표는 matlab 서버에서 문자열을 가져 와서 내가 만든 GUI의 JTextArea에 추가하는 것입니다. 나는 키 리스너 VK_ENTER를 사용하여 텍스트를 matlab 서버로 보낸다. 키 리스너가 아닌 다른 경로에 대한 제안 사항이 있습니까? –
@TaylorFireman : 예, 상황에 따라 Key Bindings, DocumentListener 또는 DocumentFilter. 너 한테 –
. 감사! –