2010-12-02 9 views
1

私はJTextAreaを使用していますので、複数の行に入力することができます。しかし、私はそこにアクションイベントハンドラはありませんが表示されるドキュメントを見た後。ボタンの代わりにEnterを使用する方法JTextArea?

テキストを入力するにはどうすればいいですか?Enterキーを押したら、他のテキスト領域に表示されますか? 私はこのためのボタンを使用したくない

よろしく。

+0

何か考慮事項:要件に矛盾があります。一方で、複数の行を入力できるようにするには、OTOHを使用します。Enterキーを押してサブミットします。したがって、ENTERがあなたのメッセージを送信するために提出するのであれば、あなたのテキスト領域に改行を作成させて、ユーザには驚くことはありませんか? –

答えて

0

このコントロールで発生したキー変更イベントにリスナーをフックしようとしましたか?私はそれが動作するはずだと思う

4

デフォルトのアクションEnterキーを使用すると、文書に "改行"文字列を追加します。この動作が気に入らない場合は、このアクションを独自のカスタムアクションに置き換える必要があります。

Key Bindingsを読んでこれをどのように行うかをご覧ください。

0

// JTextAreaにtxASend
// JTextAreaにtxAReceive //

txASend

にイベント "keyTypedに" を追加します。private void txASendKeyTyped(java.awt.event.KeyEventのがEVT){

char c = evt.getKeyChar(); 
    if(c == KeyEvent.VK_ENTER) 
    { 
     String msj = txASend.getText(); 
     txAReceive.setText(msj); 
    } 

}