我正在開發一個簡單的Java應用程序,我想知道是否有任何方法可以在一個textarea中不插入額外文本(在句子中間的某處)光標放置在點擊某個組件的位置。是否有人可以告訴我如何去得到它做在JTextArea中插入文本
2
A
回答
9
如果這是一個JTextArea component你可以在特定的使用.append
方法來添加文本到文本區域的末尾,或.insert
方法來插入新的文本位置。
如果你需要插入在當前光標處文本使用.getCaretPosition方法
5
退房:JTextComponent.getCaretPosition()
。
方法getCaretPosition()
被JTextArea
繼承,你可以用它來獲取光標位置。然後,您可以使用JTextArea.insert(String str, int pos)
在該位置插入文本。
樣品:
JFrame frame = new JFrame();
frame.setLayout(new BorderLayout());
final JTextArea jta = new JTextArea("Hello world\nHello world\nHello world");
JButton btn = new JButton("Add");
btn.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
int pos = jta.getCaretPosition(); //get the cursor position
jta.insert("Some more", pos); //insert your text
}
});
frame.add(jta, BorderLayout.CENTER);
frame.add(btn, BorderLayout.SOUTH);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();
frame.setVisible(true);
6
textArea.replaceSelection(text);
從API:
替換當前選中的內容與新的內容表示給定字符串 。如果沒有選擇,這相當於一個 插入給定的文本
+0
+1我正在尋找這個。 – FirmView
相關問題
- 1. 在JTextArea的插入位置插入文本
- 2. 在JTextArea下插入圖像
- 3. 在JTextArea的指定行上插入文本
- 4. 在jTextArea中處理文本
- 5. 嘗試將文本文件讀入JTextArea
- 6. 文本去JTextArea
- 7. UITextView在textview文本中插入文本
- 8. JTextArea獲取用戶輸入的文本
- 9. 在JTextArea中輸入文字效果
- 10. 在JTextArea中檢測文本選擇
- 11. 顯示在JTextArea中的文本
- 12. 在JTextArea中格式化文本顏色
- 13. 在JTextArea /字段中未設置文本
- 14. 在JTextArea中選擇文本片段
- 15. 在Java的JTextArea中附加文本
- 16. 將文本和輸入文件的文本讀取到JTextArea
- 17. 設置插入符號的位置,其中插入符號未插入JTextArea
- 18. 插入文本在文本區域在插入位置
- 19. 在JTextArea或JTextPane中居中文本 - 水平文本對齊
- 20. 如何閱讀文本文件導入的JTextArea中的Java Swing
- 21. 在文本框中插入文件名
- 22. 在Word文檔中插入rtf文本
- 23. 在特定位置在JTextArea中插入字符串
- 24. 插入文本
- 25. 從java中的JTextArea中讀取文本
- 26. 將只讀字符串插入到jTextArea
- 27. 將JTextArea插入帶有JLabel的JPanel
- 28. 從文件讀入JTextArea
- 29. 在文本中的光標位置插入文本輸入
- 30. 從JSpinner到JTextArea的文本
我的問題是我想在那裏光標被放置在文本區域框中的地方插入文本和我怎麼知道確切的地點它位於textarea中。 –
更新了我的答案。 – jefflunt