-1

基本上,我希望当用户按下 ENTER 键(通过其 ASCII 检查)时,应该创建 ActionEvent 对象并调用它的 actionPerformed,即触发我自己的动作事件。请提供所需的语法 thnx !:

4

3 回答 3

3

“我应该手动调用 ActionEvent,以便将控制权转移到 actionPerformed”

不,你不应该。您也不应该KeyListener在文本字段上使用 s 。ActionListener如果您有兴趣了解用户何时“操作”该字段,只需在字段中添加一个。

您还可以使用JRootPane#setDefaultButtonwhich 可以在 UI 特定的激活事件发生时触发按钮

于 2013-11-06T05:43:45.580 回答
2

对于每一帧,您可以设置一个默认按钮,该按钮将自动侦听 Enter 键。当您在该帧中按 Enter 时,将调用 actionPerformed() 方法。

frame.getRootPane().setDefaultButton(Button);

看到这个: -

允许“Enter”键按下提交按钮,而不是仅使用 MouseClick

http://docs.oracle.com/javase/7/docs/api/javax/swing/JRootPane.html#setDefaultButton%28javax.swing.JButton%29

带着敬意

杰伊

于 2013-11-06T05:57:51.117 回答
0

如果您的框架有很多按钮,请像这样使用。检查您的密钥 ascii 并确定它是 ENTER 或 ESC。并使用此代码

ok.doClick(); or cancel.doClick();

好的,取消是按钮,动作会自动调用。

于 2013-11-06T09:02:12.343 回答