所以在解决我的第一个错误后,由于Hovercraft的帮助,我终于开始编写代码并为我的实际项目准备好了东西。但是,当我尝试添加标签时,它现在只是完全不显示任何内容,我的意思是如果我删除标签并添加其他任何东西(如按钮等),它会向我显示按钮,但是当我添加标签到代码,它只是给了我一个完整的空白屏幕,不管标签的属性如何。该项目的代码如下:框架什么也没有显示,也没有显示任何错误
主要框架:
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");
}
}
面板类来处理更换不同的面板:
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")));
}
}
没有创建JFrame如何添加组件?创建JFrame(intialize)之后再添加你的所有组件框架可见。第二件事是你试图添加JFrame在Jpanel上它应该反之亦然 –
我怀疑我试图在JPanel上添加jframe,请你指出,以便我可以更正它?我还创建了(初始化JFrame,不是吗?)在第一堂课。虽然我确实记得我应该先添加组件,然后再将其设置为可见 –