Java JFrame未使用JPanel调整大小

Java JFrame未使用JPanel调整大小,java,swing,jframe,jpanel,Java,Swing,Jframe,Jpanel,我正在制作一个扫雷程序,我需要实现一个功能,用户可以选择调整地雷所在网格的大小。我已经完成了这个,但是当我做一个更大的板时,JFrame并没有变得更大 这是当用户想要调整电路板大小时发生的方法 public void mouseClicked(MouseEvent e) { if(e.getSource() == quitButton && e.getButton() == 1){ System.exit(0); } // if I hit

我正在制作一个扫雷程序,我需要实现一个功能,用户可以选择调整地雷所在网格的大小。我已经完成了这个,但是当我做一个更大的板时,JFrame并没有变得更大

这是当用户想要调整电路板大小时发生的方法

public void mouseClicked(MouseEvent e) {
    if(e.getSource() == quitButton && e.getButton() == 1){
        System.exit(0);
    }
    // if I hit the reset size button this happens
    if(e.getSource() == setDimension){
        for (int r = 0; r < size; r++)
            for (int c = 0; c < size; c++){
                gameBoard.remove(board[r][c]); // removes the buttons from the board
            }
        inputSizeAndMines(); // lets the user choose the size and amount of mines
        game = new MineSweeperGame(size, mines); // remakes the game 
        setBoard(); // adds new buttons based on what the user entered
        displayBoard(); // makes visuals for the board
        revalidate();
        repaint();
    }

如果有任何帮助,请在重新计算面板的首选尺寸后,再次呼叫将
打包到框架上

当框架在单独的课堂上时,我该怎么做?你的
框架是
静态的
我认为这不是一个好主意,或者你可以使用哦,那是我的错,我在尝试其他不起作用的东西,却忘了改变它。这有区别吗?谢谢,谢谢你的帮助,这意味着任何东西都可以从任何地方访问你的框架引用…但鉴于我可以使用
SwingUtilities
来做同样的事情,这没有什么问题。唯一的问题是,如果您更改了引用(意外或其他)或想要多个游戏框架,我在我的中进行了编辑,但没有将JFrame作为静态或实例变量。有什么不同的我可以做的吗?
public class MineSweeper {


    /**********************************
     * Main class that does everything
     **********************************/
    public static void main(String[] args) {
        JFrame frame = new JFrame("MineSweeper");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        MineSweeperPanel panel = new MineSweeperPanel();
        frame.getContentPane().add(panel);
        frame.pack();
        frame.setVisible(true);
        frame.setLocationRelativeTo(null);
    }

}