概要

JTextFieldActionListenerを追加して、Enterキーの入力を取得します。

サンプルコード

JTextField textField2 = new JTextField("addActionListener");
textField2.addActionListener(e -> append(((JTextField) e.getSource()).getText()));
view all

解説

上記のサンプルでは、JTextFieldActionListenerなどを追加して、Enterキーを入力した場合の動作をテストしています。

  • 上:
    • デフォルトのJTextField
    • 自身のフォーカスがあり、親のJRootPaneDefaultButtonが設定されている場合、Enterキー入力でDefaultButtonがクリックされる
  • 中:
    • JTextFieldのドキュメントにDocumentListenerを追加
    • DocumentListenerは、Enterキーの入力には反応しない
    • 自身のフォーカスがあり、親のJRootPaneDefaultButtonが設定されている場合、Enterキー入力でDefaultButtonがクリックされる
  • 下:
    • JTextFieldActionListenerを追加
    • 親のJRootPaneDefaultButtonが設定されているかどうかに関わらず、Enterキー入力で自身に追加されたActionListenerが実行される
    • このActionListenerはマウスクリックには反応しない

参考リンク

コメント