JAVA新手,很想学习GridBagLayout的用法,小弟到现在还不会设定它的参数.望高手指教....

解决方案 »

  1.   

    我也在研究这个,在网上找了个例子
    import javax.swing.*;
    import java.awt.event.*;
    import java.awt.*;/**
     * Java 中GridBagLayout布局管理器的小例子
     * 
     * @author 五斗米 <如转载请保留作者和出处>
     * @blog http://blog.csdn.net/mq612
     */public class Test1 {
      private JFrame frame = null;
      private JPanel pane = null;
      private int gridx, gridy, gridwidth, gridheight, anchor, fill, ipadx, ipady;
      private double weightx, weighty;
      private Insets insert;  public Test1() {
        frame = new JFrame("Test");
        pane = new JPanel();
        GridBagLayout gbl = new GridBagLayout();
        GridBagConstraints gbc = null;
        pane.setLayout(gbl);
        JButton b_0 = new JButton("top");
        b_0.setFont(new Font("宋体", 0, 12));
        JButton b_1 = new JButton("down");
        gridx = 0; //0行
        gridy = 0; //0列
        gridwidth = 1; //长度为1
        gridheight = 1; //高度为1
        weightx = 1.0; //当窗口放大时,长度随之放大
        weighty = 0.0; //当窗口放大时,高度没有变化
        anchor = gbc.NORTH; //当组件没有空间大时,使组件处于顶端
        fill = gbc.HORIZONTAL; //当有剩余空间时,横向填充空间
        insert = new Insets(10, 10, 10, 10); //组件彼此的间距
        gbc = new GridBagConstraints(gridx, gridy, gridwidth, gridheight, weightx,
                                     weighty, anchor, fill, insert, ipadx, ipady);
        gbl.setConstraints(b_0, gbc);
        pane.add(b_0);
        gridy = 1; //0列
        weighty = 1.0; //当窗口放大时,高度随之放大
        anchor = gbc.CENTER; //当组件没有空间大时,使组件处于中心
        fill = gbc.BOTH; //当有剩余空间时,双向填充空间
        gbc = new GridBagConstraints(gridx, gridy, gridwidth, gridheight, weightx,
                                     weighty, anchor, fill, insert, ipadx, ipady);
        gbl.setConstraints(b_1, gbc);
        pane.add(b_1);    frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE);
        frame.getContentPane().add(pane);
        frame.setSize(300, 200);
        frame.setVisible(true);
      }  public static void main(String args[]) {
        Test1 t = new Test1();
      }}
    要是有啥进展在共同研究呵呵
      

  2.   

    强烈建议LZ看下张孝详就业培训教程里的GUI教程.
        通俗易懂,具体的例子我就不贴了.太多..........
            LZ其实也可以随便找一本JAVA基础书看看,都有你想要的例子的.....