基本上,我希望当用户按下ENTER键(由其ASCII检查)时,应该创建ActionEvent对象并调用其actionPerformed,即触发我自己的动作事件。请提供所需的语法 thnx! :
答案 0 :(得分:3)
“我应该手动调用ActionEvent,以便将控件转移到actionPerformed”
不,你不应该。您不应该在文本字段上使用KeyListener
。如果您有兴趣知道用户何时“操作”该字段,只需在字段中添加ActionListener
。
您还可以使用JRootPane#setDefaultButton
,可以在发生UI特定激活事件时触发按钮
答案 1 :(得分:2)
对于每个帧,您可以设置一个默认按钮,该按钮将自动侦听Enter键。当您在该帧中按Enter键时,将调用actionPerformed()方法。
frame.getRootPane().setDefaultButton(Button);
见: -
Allowing the "Enter" key to press the submit button, as opposed to only using MouseClick
关于
的Ajay
答案 2 :(得分:0)
如果你的框架有很多按钮,请使用这样的。 检查你的密钥ascii并确定它是ENTER或ESC。 并使用此代码
ok.doClick(); or cancel.doClick();
好的,取消是按钮,动作会自动调用。