天天看點

Java開發GUI之BorderLayout邊界布局

前面部落格中所提及的例子都是針對單獨的視圖元件,将元件組合并布局在合适的位置才能算是完整的界面。Java中的布局采用布局管理器模式進行,提供了跨平台性,BoaderLayout布局管理器會将其内容分成5個部分,上下左右和中心,示例代碼如下:

static void BorderLayoutTest(){

 Frame frame = new Frame("Label");

 BorderLayout layout = new BorderLayout(10,15);

 Panel pannel = new Panel(layout);

 pannel.add(BorderLayout.NORTH, new Button("北方"));

 pannel.add(BorderLayout.SOUTH, new Button("南方"));

 pannel.add(BorderLayout.EAST, new Button("東方"));

 pannel.add(BorderLayout.WEST, new Button("西方"));

 pannel.add(BorderLayout.CENTER, new Button("中心"));

 frame.add(pannel);

 frame.pack();

 frame.show();

}

效果如下:

Java開發GUI之BorderLayout邊界布局

BorderLayout中常用方法解析:

//常量 指定布局在北方位置

public static final String NORTH  = "North";

//常量 指定布局在南方位置

public static final String SOUTH  = "South";

//常量 指定布局在東方位置

public static final String EAST   = "East";

//常量 指定布局在西方位置

public static final String WEST   = "West";

//常量 指定布局在中心位置

public static final String CENTER = "Center";

//初始化方法 預設無間距

public BorderLayout();

//初始化方法 hgap設定水準間距 vgap設定垂直間距

public BorderLayout(int hgap, int vgap);

//擷取水準間距

public int getHgap();

//設定水準間距

public void setHgap(int hgap);

//擷取垂直間距

public int getVgap();

//設定垂直間距

public void setVgap(int vgap);

除了上面的方法,布局管理器相關類中都實作了添加元件的方法,這些方法一般開發者是不需要調用到的,當向容器中添加元件時,容器會用其對應的布局管理器來調用這些方法進行布局。