3

我正在尝试使用 Java 1.4.2 编写一个简单的游戏它使用两个主屏幕,这两个主屏幕都使用JPanel. 其中一个只有一个MouseListener并且工作完美;使用第一个,您可以打开第二个。第二个屏幕使用 aMouseListener和 a KeyListener。该mousePressed方法工作正常。但是,该keyPressed方法起初不起作用;为了让它工作,我必须最小化窗口,然后在它工作之前再次重新选择它。

在第一个屏幕中,我被建议toFront()在打开第二个屏幕时输入一个命令;iesecondFrame.toFront() 但是,它给了我一个错误,说No method "toFront()" was found in type "secondFrame"- 即使secondFrameextends JPanel

我听说过一些关于“键绑定”的信息;我不熟悉这个话题,但我宁愿从核心解决这个问题,而不仅仅是求助于解决方法。如果可能的话,我想在仍然使用KeyListener.

代码片段:

public TowerDefenceBoard{
    (generic stuff)
    setFocusable (true);
    addKeyListener (this);
    requestFocusInWindow ();
}

有谁知道为什么会这样?有人有建议吗?

提前致谢 :)

4

1 回答 1

0

尝试requestFocsInWindow()使用KeyListener

于 2012-08-17T09:50:35.483 回答