使用GridBagConstraints更新布局

时间:2012-12-09 14:27:47

标签: java swing layout awt layout-manager

我使用GridBagConstraints来更新我的布局,当点击一个按钮时,会出现一些输入字段。

private class EventListener implements ActionListener {
        public void actionPerformed(ActionEvent e) {
            input_panel.removeAll();
               String str = e.getActionCommand();
               System.out.print(str);

               JLabel jl = new JLabel("Label ");
            // Create constraints
               GridBagConstraints textFieldConstraints = new GridBagConstraints();
               GridBagConstraints labelConstraints = new GridBagConstraints();

               labelConstraints.gridx = 0;
               labelConstraints.gridy = 0;

               input_panel.add(jl,textFieldConstraints);
        }
    }

这个功能成功运行,但是,有一个奇怪的问题,当我点击按钮时,它会更新,但不会立即显示,我必须调整窗口大小才能看到它。会发生什么?

1 个答案:

答案 0 :(得分:4)

input_panel.add(jl,textFieldConstraints);
input_panel.revalidate(); //try to add this
input_panel.repaint(); // and this