Java 框架未显示任何内容,也未显示任何错误

Java 框架未显示任何内容,也未显示任何错误,java,swing,jframe,jpanel,Java,Swing,Jframe,Jpanel,因此,在气垫船的帮助下解决了我的第一个错误后,我终于开始为我的实际项目编写代码并做好准备。然而,当我尝试添加标签时,它现在什么也不显示,我的意思是,如果我删除标签并添加任何其他东西,例如按钮,它会显示按钮,但当我将jlabel添加到代码中时,它只会给我一个完全空白的屏幕,无论标签的属性是什么。本项目代码如下: 主框架: public class Parking_Mania { public static void main(String []args)throws Exception {

因此,在气垫船的帮助下解决了我的第一个错误后,我终于开始为我的实际项目编写代码并做好准备。然而,当我尝试添加标签时,它现在什么也不显示,我的意思是,如果我删除标签并添加任何其他东西,例如按钮,它会显示按钮,但当我将jlabel添加到代码中时,它只会给我一个完全空白的屏幕,无论标签的属性是什么。本项目代码如下:

主框架:

public class Parking_Mania {

public static void main(String []args)throws Exception
{
    new GameFrame("Paking Mania");
}
}
游戏框架:

public class GameFrame extends JFrame{

File info=new File("information.txt");

public GameFrame(String name) throws IOException
{
    if(!info.exists())
    {
        info.createNewFile();
    }
    this.setTitle(name);
    this.setSize(640,510);
    this.setLocationRelativeTo(null);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setResizable(false);
    this.setVisible(true);  

    Frames frame=new Frames();
    this.add(frame);
    frame.panel.show(frame, "opening");

}
}
处理更改不同面板的Panel类:

public class Frames extends JPanel{

CardLayout panel= new CardLayout();

public Frames()
{
    this.setLayout(panel);
    Opening op=new Opening(this);
    //nxtframe nf= new nxtframe(this);
    this.add(op, "opening");
    //this.add(nf, "nt");
    }

}
最后,应在框架上显示的面板:

public class Opening extends JPanel{


private Frames f;
private JLabel bg=new JLabel();
//private JLabel helpframe=new JLabel();
private JButton play=new JButton();
/*private JButton help=new JButton();
private JButton helpclose=new JButton();
private ImageIcon background;*/

public Opening(final Frames f){

    this.f=f;
    this.setBackground(Color.BLACK);
    //this.add(bg);
    this.add(play);
    //bg.setIcon(new ImageIcon(getClass().getResource("/bg.jpg")));

}
}

在使框架可见之前,应将构件添加到框架中

从中找到的工作示例开始。本教程涵盖了Swing的所有基础知识

我将特别从关于
如何使用CardLayout
的教程开始,以了解和修改第一个演示代码


本教程将向您展示如何更好地构造代码,使您不必继续扩展面板,而只是向面板添加组件

在显示框架之前,应将组件添加到框架中

从中找到的工作示例开始。本教程涵盖了Swing的所有基础知识

我将特别从关于
如何使用CardLayout
的教程开始,以了解和修改第一个演示代码


本教程将向您展示如何更好地构造代码,使您不必继续扩展面板,而只是向面板添加组件

在不创建JFrame的情况下,如何在其上添加组件?创建JFrame(初始化),然后添加所有组件,然后将框架设置为可见。第二件事是您试图在Jpanel上添加JFrame,这应该是相反的。我怀疑我是否试图在Jpanel上添加JFrame,请您指出,以便我可以更正它?而且我在第一个类中创建了(已经初始化了JFrame,不是吗?)。虽然我记得我应该先添加组件,然后再将其设置为Visible而不创建JFrame如何在其上添加组件?创建JFrame(初始化)第二件事是你试图在Jpanel上添加JFrame,这应该是相反的。我怀疑我是否试图在Jpanel上添加JFrame,请你指出,这样我才能更正它?而且我在第一个类中创建了(已经初始化了JFrame,不是吗?)。虽然我记得在设置visibleOMG之前我应该先添加组件,但这是个错误!!!在我希望我之前校对代码之前,我从未看过可见部分。PS:我之所以扩展面板,是因为代码看起来更有条理,我的意思是,我的每一个类看起来不像是与代码紧密聚集在一起的,因为这样会使它看起来不那么聚集,而且看起来有点条理化(我的老师在去年(12年级)教我java的建议)。天哪,那是个错误!!!在我希望我之前校对代码之前,我从未看过可见部分。PS:我之所以扩展面板,是因为代码看起来更有条理,我的意思是,我的每个类看起来不像是与代码紧密聚集在一起的。这样一来,它就不那么聚集了,看起来也有点条理化(我的老师在去年(12年级)教过我java)。