簡體   English   中英

設置插入符號不在JTextArea中的插入位置

[英]Setting caret position where caret has not been in JTextArea

無論如何,我可以在JTextArea中設置插入符號位置以前沒有的插入符號位置嗎? 我想使用KeyEvent.VK_ENTER上的KeyListener將文本添加到我的JTextArea中,然后在將文本添加到JTextArea的下面將插入標記位置設置為一行。

干杯,

泰勒

在KeyEvent.VK_ENTER上使用KeyListener

不要使用KeyListener。 Swing被設計為與鍵綁定一起使用。 閱讀Swing教程中有關如何使用鍵綁定的部分, 獲取更多信息。

在將文本添加到JTextArea的下面,將插入符位置設置為一行。

添加文本時,請確保在文本區域中附加“ \\ n”。 然后,您可以使用:

textArea.setCaretPosition( textArea.getDocument().getLength() );
  • 我強烈建議您不要使用KeyListener,因為不鼓勵使用低級偵聽器,這會使您的代碼難以升級和修改。
  • 您的最終目標是什么,因為可能有更好的方法。
  • 要添加新行,只需執行以下操作:通過textArea.append("\\n");將新行添加到JTextArea textArea.append("\\n");
  • 然后通過setCaretPosition(...)將光標前進到JTextArea的末尾

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM