【发布时间】:2017-04-15 03:18:42
【问题描述】:
目前我正在尝试编写基于网格的游戏。 我已经设法为一般导航实现了一个关键监听器。 但是当按下某个键时,会打开一个 Jpopup 菜单。
现在我想用一个关键的监听器来实现菜单导航。按 B 应该再次关闭菜单。
KeyListener UnitActionMenuKeyListener = new KeyListener() {
@Override
public void keyPressed(KeyEvent evt)
{
if (evt.getKeyCode()==KeyEvent.VK_B)
menu.setVisible(false)
}
@Override
public void keyReleased(KeyEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
JPopupMenu menu = new JPopupMenu("UnitActionMenu");
JMenuItem bewegenItem = menu.add("test");
在此之后使用 menu.show 和 menu.addKeyListener。
但是无论我尝试什么,要么我的常规导航不再起作用,要么常规导航将起作用,但我的菜单不会对按下 B 做出反应
那么,我如何为多个元素实现多个键侦听器? 我只是希望我的主窗口能够以不同于菜单的方式聆听(并做出反应)
(对不起,写得不好,我的英语不是很好,我因为一个简单的任务失败超过 4 小时而感到沮丧)
【问题讨论】:
标签: java swing keylistener jpopupmenu