比如点击一个按钮,让其它组件变大一点。。再点击。再变大一点

解决方案 »

  1.   

    设置其他组件的width和height就行啊。
      

  2.   


    import java.awt.BorderLayout;
    import java.awt.Color;
    import java.awt.Dimension;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    public class MyFrame extends JFrame { private static final long serialVersionUID = 1L;

    private JLabel label;
    private JPanel panel;
    private JButton button;

    public MyFrame()
    {
    setSize(new Dimension(400,300));
    setLayout(new BorderLayout());
    label=new JLabel("变大的面板");
    panel=new JPanel();
    panel.setSize(400,50);
    panel.setBackground(Color.RED);
    panel.add(label);
    getContentPane().add(panel,BorderLayout.NORTH);
    button=new JButton("点击变大");
    button.setSize(100, 50);
    button.addActionListener(new ActionListener(){ public void actionPerformed(ActionEvent arg0) {
    int x=MyFrame.this.getPanel().getWidth();
    int y=MyFrame.this.getPanel().getHeight()+100;
    MyFrame.this.getPanel().setSize(x, y);
    MyFrame.this.repaint();
    }

    });
    getContentPane().add(button,BorderLayout.SOUTH);
    setVisible(true);
    }

    public JPanel getPanel()
    {
    return this.panel;
    }

    public static void main(String[] args)
    {
    new MyFrame();
    }
    }