Java cardlayout,KeyListener停止工作

时间:2013-08-06 08:59:14

标签: java swing jpanel keylistener cardlayout

KeyListener中有CardLayout

KeyListener listener = new MyKeyListener();
addKeyListener(listener);
setFocusable(true);

它运作得很好。问题是当我从主屏幕管理器退出JPanel时:

private CardLayout cl;
cl.show(cardPanel, "1");

然后回到KeyListener停止工作。当显示KeyListener时,如何再次唤起JPanel

1 个答案:

答案 0 :(得分:2)

KeyListeners有焦点问题,虽然您已将组件设置为可关注的,但在视图更改后您还没有requestFocusInWindow

相反,请使用具有更强焦点处理控制权的Key Bindings