我的按钮不会出现,直到我用鼠标悬停在它上面

时间:2015-03-20 18:32:50

标签: java jframe jpanel

我有这个问题,是的,我看到其他人有问题,但我不能真正比较我的代码,看到问题的方式,所以我希望你能帮助我。

我使用intellij来编写我的代码并在那里使用gui desinger制作gui的但是当我添加一个按钮时我没有让它显示直到我用鼠标悬停它并且可能是错误的我无法让它工作。这是课程     //这是jpanel类     公共类paintMenu扩展了JPanel {

public JPanel menuPanel;
public JButton newGameButt;
public JButton loadGameButt;
public JButton helpbutt;
public JButton optionsButt;
public JButton info;
public JButton quitButt;

public paintMenu(){

    add(newGameButt);
    add(loadGameButt);
    add(helpbutt);
    add(info);
    add(optionsButt);
    add(quitButt);
    setVisible(true);


}

//this is de jframe class 
public class jframepainter extends JFrame {

paintMenu menupaint = new paintMenu();

public jframepainter(){


    //main frame settings
    setTitle("Kingdom V " + Reference.version);
    setSize(Reference.width, Reference.height);
    setResizable(false);
    setLocationRelativeTo(null);
    setVisible(Kingdom.vissible);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    //draw jpnael
    getContentPane().add(menupaint);

}

2 个答案:

答案 0 :(得分:0)

我不知道Kingdom类是什么,但我可以假设vissible是一个拼写错误并且可能导致编译时错误。你没有清楚地描述你的问题。

答案 1 :(得分:0)

将JPanel添加到JFrame后,尝试将其设置为可见。您也可以在添加JPanel后调用this.pack()。

//main frame settings
setTitle("Kingdom V " + Reference.version);
setSize(Reference.width, Reference.height);
setResizable(false);
setLocationRelativeTo(null);
//draw jpnael
getContentPane().add(menupaint);  //Moved this before setting Visible
this.pack();                      // call pack before setting visible
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(Kingdom.vissible);