3

コマンド ライン プログラムを作成していますが、Enter キーが押されているかどうかをテストする必要があります。

4

3 に答える 3

9

sを含む a JTextFieldwhile でエンター キーが押されると、anが発生します。JTextFieldActionListenerActionEvent

JTextField field = ...
field.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {
        System.out.println("Enter key pressed");
    }
});
于 2012-05-24T20:58:17.227 に答える
6

テキスト フィールドにキー リスナーを追加し、keyPressed() で KeyEvent の keyCode を確認します。以下の例を試してください。

public class TestEnterKeyPressInJTextField
{
  public static void main(String[] args)
  {
    JFrame frame = new JFrame();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JTextField textField = new JTextField(20);
    textField.addKeyListener(new KeyAdapter()
    {
      public void keyPressed(KeyEvent e)
      {
        if (e.getKeyCode() == KeyEvent.VK_ENTER)
        {
          System.out.println("ENTER key pressed");
        }
      }
    });

    frame.getContentPane().add(textField);
    frame.pack();
    frame.setVisible(true);
  }
}
于 2012-05-25T06:44:40.467 に答える
2

コマンドラインプログラムまたはGUIアプリケーション?

詳細な回答については、こちらをご覧ください

public void keyTyped(KeyEvent e) {
}

public void keyPressed(KeyEvent e) {
    System.out.println("KeyPressed: "+e.getKeyCode()+", ts="+e.getWhen());
}

public void keyReleased(KeyEvent e) {
    System.out.println("KeyReleased: "+e.getKeyCode()+", ts="+e.getWhen());
}

必要なすべてのキーを押して、KeyCode を確認します

于 2012-05-24T23:07:59.450 に答える