如何在removeKeyListener之后使用addKeyListener?

时间:2015-10-16 22:01:50

标签: java swing paint keylistener

addKeyListener之后如何JPanelremoveKeyListener

事实上,在一场双人游戏中,一方获胜后: 我不想继续比赛。

所以我删除了keylistener

我想重新开始游戏。

我需要再次keyListener

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

您可以在单独的类中编写KeyListener:

public class MyKeyListener implements KeyListener {
    // implement needed methods here
}

然后您可以通过以下方式创建KeyListener:

MyKeyListener keyListener = new MyKeyListener();
addKeyListener(keyListener);

然后你可以通过写下来删除并添加它:

removeKeyListener(keyListener);
keyListener = new MyKeyListener();
addKeyListener(keyListener);

答案 1 :(得分:0)

谢谢各位朋友。 我使用名为 winType 的变量。它的默认值是 0 。如果出现胜利条件,我将其设置为值。 所以,

  

而不是删除keylistener

,我保留了keylisener,但它确实有效

  

仅当winType = 0

当用户点击New时,我将winType重置为0。

解决了删除keylistener后没有重新绘制的问题。 [已解决问题]