- ベストアンサー
TextAreaのダブルクリックイベントを発生させるには
PersonalJavaでPDA(WinCE)用のプログラムを書いて遊ぼうかと考えています。 従ってJDK1.1.8を使うので、Swingは使えません。 VisualBasicではTextBoxをマウスでダブルクリックすることでイベント発生できるのですが、TextAreaには標準ではイベント発生機能が無いようです。 どうプログラミングすれば、TextAreaのダブルクリックイベントを発生させる、もしくは同等の機能を持たせることができるでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
TextArea中の文字列をダブルクリックしたとき、単語が選択されて反転表示になりませんか? もしそれなら簡単で、TextArea#getSelectedTextで選択文字列を取得できます。 ただ、これは実行環境によって挙動が違うのかも知れません。
その他の回答 (1)
- yogawa
- ベストアンサー率66% (4/6)
回答No.1
TextAreaはComponentのサブクラスなので、addMouseListenerメソッドによってイベントリスナを設定できます。 イベントを受け取れば、MouseEvent#getClickCountによってクリック回数は分かります。 public void mouseClicked(MouseEvent me) { if (me.getClickCount() == 2) { System.out.println("Double clicked!"); } } こんな感じです。
補足
補足説明させて下さい。VBのTextBoxでは、ダブルクリックすると、そのクリック位置にある単語をText1.SelTextとして獲得できます。 実は、VBでのプログラムの移植を考えていて、JavaのTextAreaでも,このダブルクリックした位置の単語を獲得したいのです。