Java 按下JButton后将JTable放在JPanel上

Java 按下JButton后将JTable放在JPanel上,java,swing,jtable,jpanel,gridbaglayout,Java,Swing,Jtable,Jpanel,Gridbaglayout,当我运行这段代码时,按钮会显示在JPanel上,但一旦我单击按钮,什么也不会发生。有没有关于我哪里出了问题的建议?很抱歉,如果这真的很简单。说到GUI,我是个新手 final JPanel card3 = new JPanel(); //Tetris setup JButton startGame = new JButton("START GAME"); card3.setLayout(new GridBagLayout()); GridBagConstraints gbc2 = new Gri

当我运行这段代码时,按钮会显示在JPanel上,但一旦我单击按钮,什么也不会发生。有没有关于我哪里出了问题的建议?很抱歉,如果这真的很简单。说到GUI,我是个新手

final JPanel card3 = new JPanel();
//Tetris setup
JButton startGame = new JButton("START GAME");
card3.setLayout(new GridBagLayout());
GridBagConstraints gbc2 = new GridBagConstraints();
gbc.gridx = 0;
gbc.gridy = 0;
gbc.insets = new Insets(2,2,2,2);
card3.add(startGame, gbc2);
gbc.gridy = 1;
startGame.addActionListener(new ActionListener() {          
    @Override
    public void actionPerformed(ActionEvent e) {
        Tetris game = new Tetris();
        JTable table = new JTable(game.getNumRows(), game.getNumCols());
        card3.add(table);
    }
});

通常,您会将表添加到JScrollPane,然后将滚动窗格添加到面板。这样,您将自动显示表格标题

将组件添加到可见GUI时,需要以下代码:

panel.add( scrollPane );
panel.revalidate();
这将导致调用布局管理器,以便重新布局所有组件