KeyListener java,执行按钮的动作
Posted
技术标签:
【中文标题】KeyListener java,执行按钮的动作【英文标题】:KeyListener java, executes button's action 【发布时间】:2014-04-18 11:11:28 【问题描述】:Java 中是否有一种方法可以执行按下操作按钮?,我需要这个,因为我想制作一个 KeyListener,当您按下键盘上的按钮时,“5”会在 gui 描述“5”中启动我按钮;
编辑
我得到了 ActionListener :
public void actionPerformed(ActionEvent event)
if(button.getLabel().equals("1"))
// do something
和 KeyListener 搭配
public void keyPressed(KeyEvent e)
if (e.getKeyCode() == VK_NUMPAD1)
// do what would happen if I pressed the mouse on the button
// I do not know how to execute it thought that it was pressing down the
// button with the label '1 '
【问题讨论】:
不清楚你在问什么。你试过什么? 是的,它被称为 KeyListener。问题可能是您将此侦听器绑定到的组件(当它处于活动状态时)或您用于键盘的键码。显示一些代码。 【参考方案1】:查看http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyListener.html 或http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyAdapter.html,无论您喜欢匿名内部类还是接口。
例子:
panel.add(new KeyListener()
@Override
public void keyPressed(KeyEvent e)
if (e.getKeyCode() == VK_NUMPAD5)
// do whatever you want here
System.out.println("Numpad 5 pressed);
@Override
public void keyReleased(KeyEvent e)
@Override
public void keyTyped(KeyEvent e)
);
或
panel.add(new KeyAdapter()
// override the method you want
// do what you want here
);
【讨论】:
【参考方案2】:下面的例子很好,你只需要在 if 语句中输入:
if (e.getKeyCode() == VK_NUMPAD5)
nameOfButtonToClick.doClick();
显然它们必须在相同的范围内,因为您的按钮可能被声明为字段值?
【讨论】:
以上是关于KeyListener java,执行按钮的动作的主要内容,如果未能解决你的问题,请参考以下文章