-1

Enter キーを使用するときに検索を実行する jTextField を取得しようとしています。searchButton が検索を行うため、テキスト フィールドでキーを押して searchButton のアクションをトリガーするアクションが必要です。

テキストフィールドでEnterキーを押すと、コンソールに「Enter Pressed」と表示されます。

ActionListener actionListener = new ActionListener() {
  public void actionPerformed(ActionEvent actionEvent) {
    SearchButton.getActionForKeyStroke(
      KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, 0, false));
    System.out.println("Enter Pressed");
  }
};

KeyStroke keystroke = KeyStroke.getKeyStroke(KeyEvent.VK_ENTER, 0, false);
jTextField1.registerKeyboardAction(actionListener, keystroke, JComponent.WHEN_FOCUSED);
4

1 に答える 1

1

テキストフィールドとボタンの両方に同じ ActionListener を再利用しないのはなぜですか?

または、ボタンのリスナーにアクセスできない場合は、次のようにすることもできます。

jTextField1.addActionListener(new ActionListener()
{
  public void actionPerformed(ActionEvent actionEvent)
  {
    searchButton.doClick();
  }
}
于 2012-12-12T16:25:11.637 に答える