1
if("Back".equals(e.getActionCommand()))
{
    escape.setVisible(false);
    paused = false;
    running = !running;
    Graphics g = start.getGraphics();
    g.dispose();
    Component glassPane = start.getGlassPane();
    glassPane.setVisible(!glassPane.isVisible());
    Main.main(null);
    Main.running = true;
    start.dispose();
}

这是我的代码,用于禁用我的 jframe、加载一个新的并处理它。每当我这样做时,当我返回框架时,我会收到奇怪的图形错误。 图形错误之一!

如何完全关闭框架?

4

1 回答 1

3
  • 例如创建private/ public(取决于您的代码设计)变量JFrame

  • 那么你就不必费心处理可见的JFrame然后重新创建一个新的

  • 创建classlocal instace返回JPanel游戏内容

  • 打电话JFrame#getContentPane#removeAll(

  • 称呼JFrame#getContentPane#add(new GamePanel())

  • 也许有最简单的方法可以将任何内容(取决于您的代码设计)重置为 start_up 状态

于 2012-09-08T12:43:17.377 回答