【发布时间】:2016-05-20 00:11:54
【问题描述】:
我在java方面相对较新,我正在制作一个HangMan游戏,但我现在面临一个问题。特别是,当有人找到这个词时,我想关闭程序的框架以打开一个新的,但是因为我的那里的类扩展 JPanel dispose() 不是可用的解决方案。那么,我应该怎么做才能关闭这个框架呢? (请记住,它的对象是在另一个类中定义的,即调用该特定类的那个。)这是我的代码的一部分:(请原谅我显示了这么多行)我只想知道如何关闭此窗口不退出整个程序,感谢您的时间 :) )
编辑:谢谢大家,我真的通过这个“评论部分”学到了很多东西。感谢您的快速回复,我希望将来我不会再问这样愚蠢的问题:) PS:我实际上使用 CardLayout 来解决我的问题。我真的不认为这个问题与“如何以编程方式关闭 JFrame”有什么相似之处,因为在这个问题中我不能使用 dispose 方法,因为我正在扩展 JPanel。
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
//import java.io.File;
import java.util.*;
import java.util.concurrent.TimeUnit;
public class Game extends JPanel implements Runnable{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
this.setBackGround(Color.BLACK);
}
public void run()
{
}
}
【问题讨论】:
-
请发布minimum amount of code 来证明您的问题。这是太多无关紧要的代码,无法指望任何人阅读。
-
“我想关闭程序的框架以打开一个新的框架” - 请考虑像
CardLayout这样的替代方案,use of multipleJFrames 不是一个好习惯. -
"当有人找到这个词时,我想关闭程序的框架以打开一个新的" - 不要。再次将游戏状态重置为开始