アプリ版:「スタンプのみでお礼する」機能のリリースについて

二つのスレッドがjTextAreaへのテキスト書き込みを行うJavaアプリケーションを作っています。そこで、jTextArea内でのカーソルの移動をプログラム側で制御したいのですが、カーソル移動の方法がわかりません。A、Bのスレッドがあるとして、Aはキーボードからの入力を表示する。ここでは入力位置にカーソルがあるので問題ありませんが、Bのスレッドがテキストをappend()した場合、append()されたテキストの文末にカーソルを移動したいのです。現状ではカーソルはキーボード入力された文末に留まったままになり、矢印キーでappend()されたテキスト分移動させなくてはなりません。これではさすがに操作性が悪すぎますし、かっこ悪いですよね。どなたかカーソルの操作方法をご存知でしたら教えていただけないでしょうか。よろしくお願いします。

A 回答 (1件)

javax.swing.text.JTextComponent クラスの



setCaretPosition(int position)メソッド

ではダメですか?

実際プログラミングしていないので自信ないですが、APIドキュメントを見るとできそうです。

参考までに。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。お礼が遅れて申し訳ありませんでした。
このメッソドを使うには、先にテキスト全体のテキスト量を取得して、それをpositionとしてカーソルを文末に飛ばす、ということですね。さっそく試してみます。

お礼日時:2001/10/15 18:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!