2013-07-05 44 views

回答

1

actionPerformed(ActionEvent e)是ActionListener接口的抽象方法。您应该按照以下方式添加它。

button.addActionListener(new ActionListener(){ 
     public void actionPerformed(ActionEvent e){ 
     //............ 
    } 
    }); 

这是可以的JTextField?

,这可用于JTextField。

1

对于JButton,单击按钮时会调用ActionListener

当按下Enter时会触发JTextFieldActionListener

这在文档中有解释。

+0

在此[链接]上(http://docs.oracle.com/javase/6/docs/api/javax/swing/JTextField.html#addActionListener%28java.awt.event.ActionListener%29)没有说任何关于jTextField调用actionPerformed只有当用户按ENTER.Where我找到所有的Swing组件(JTextField,JButton,...)的解释? – Blocked

+0

@Blocked在第7段中以*开始的介绍*文本字段如何消耗VK_ENTER事件取决于文本字段是否具有任何动作侦听器。* –

2

当用户在该摆动组件上执行任何操作时,会调用actionPerformed。 ActionListner可以添加到每个Swing组件。所以是的,你可以将它添加到JTextField中。但只有在某人按下JTextField上的Enter键时才会被调用。对于其他操作,您需要添加其他列表,例如DocumentListner。