按鈕佈局演示

package wei;
import java.awt.*;  //添加AWT和Swing庫文件
import javax.swing.*;  //Swing庫文件
public class LayoutTest extends JFrame     //建立類LayouTest繼承於類JFrame
{
    /**
     * 
     */
    private static final long serialVersionUID = -7697840790790026847L;
    JButton btn1,btn2,btn3,btn4,btn5;
    JPanel mainPan;
    FlowLayout fLayout;
    GridLayout gLayput;
    BorderLayout blayout;
    CardLayout cLayout;     //定義佈局方式;
    public LayoutTest(String layoutstyle )   //定義構造函數
    {
        super("佈局方式"+layoutstyle);
        mainPan=new JPanel();
        fLayout=new FlowLayout(FlowLayout.LEFT);
        GridLayout gLayout = new GridLayout(3,2);
        blayout =new BorderLayout();
        cLayout = new CardLayout(10,10);      //創建4種佈局方式的對象;
           if(layoutstyle =="fLayout")
                mainPan.setLayout(fLayout);
           else if(layoutstyle=="gLayout")
                mainPan.setLayout(gLayout);
           else if(layoutstyle=="bLayout")
                 mainPan.setLayout(blayout);
           else if(layoutstyle=="cLayout")
                 mainPan.setLayout(cLayout);
           else 
                 System.out.print("佈局方式輸入錯誤!");    //判斷採用何種佈局方式;
        getContentPane().add(mainPan);
        btn1=new JButton("按鈕1");
        btn2=new JButton("按鈕2");
        btn3=new JButton("按鈕3");
        btn4=new JButton("按鈕4");
        btn5=new JButton("按鈕5");        //創建5個按鈕類的對象;
        if(layoutstyle =="fLayout"||layoutstyle == "gLayout")
        {
           mainPan.add(btn1);
           mainPan.add(btn2);
           mainPan.add(btn3);
           mainPan.add(btn4);
           mainPan.add(btn5);
        }                   //定義FlowLayout或者GridLayout的佈局方式;
       if(layoutstyle =="bLayout"||layoutstyle == "cLayout")
        {
           mainPan.add(btn1,"East");
           mainPan.add(btn2,"South");
           mainPan.add(btn3,"West");
           mainPan.add(btn4,"North");
           mainPan.add(BorderLayout.CENTER,btn5);
        }
           setSize(250,150);   //設置界面的高度和寬度
           setVisible(true);     //設置界面的可見性
           setDefaultCloseOperation(EXIT_ON_CLOSE);  //設置窗口關閉時的默認操作
    }


    public static void main(String[] args) 
    {
        // TODO 自動生成的方法存根
              new LayoutTest("fLayout");    
              new LayoutTest("gLayout");    
              new LayoutTest("bLayout");    
              new LayoutTest("cLayout");
    }
    }

“`這裏寫圖片描述

知識點:

   佈局管理器;
   FlowLayout佈局;
   BorderLayout佈局;
   CardLayout佈局;
   GridLayout佈局;
   GridBagLayout佈局;
   NULL佈局;

在進行界面設計時,一般通過選擇合適的控件,並精心的設計這些控件的位置佈局來實現用戶界面,但是在程序運行過程中,例如如果表單被改變了大小,則控件的佈局也可能會隨着發生變化。如界面拉伸或者縮小的時候,則表單的內容會顯得非常不協調。爲了避免這種情況,java提供了佈局管理器(LayoutManager)來管理相關的組件,控制容器內的各個組件擺放狀態。這樣做既可以有序擺放組件,同時也可以在窗口發生變化時會自動更新版面並調整窗口的大小;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章