【從零開始學 Java 程式設計】佈局管理器 - BorderLayout
【從零開始學 Java 程式設計】 線上教學課程目錄,使用 Java 程式語言,開發應用程式。
BorderLayout
BorderLayout 邊界佈局,共有五個區域位置配置
在 Java 1.4 之後,新版 SDK,採用頁首、頁尾、行首、行尾和中間配置:
Java 1.4 之前,舊版 SDK,採用東、南、西、北和中間配置
完整程式碼
import javax.swing.*;
import java.awt.*;
public class DemoBorderLayout {
public void addComponentsToPane(Container pane) {
//設定採用 BorderLayout
pane.setLayout(new BorderLayout());
//新增一個按鈕,放在「頁首」
JButton button = new JButton("PAGE_START");
pane.add(button, BorderLayout.PAGE_START);
//新增一個按鈕,放在「中間」
button = new JButton("CENTER");
pane.add(button, BorderLayout.CENTER);
//新增一個按鈕,放在「行首」
button = new JButton("LINE_START");
pane.add(button, BorderLayout.LINE_START);
//新增一個按鈕,放在「頁尾」
button = new JButton("PAGE_END");
pane.add(button, BorderLayout.PAGE_END);
//新增一個按鈕,放在「行尾」
button = new JButton("LINE_END");
pane.add(button, BorderLayout.LINE_END);
}
private DemoBorderLayout() {
JFrame frame = new JFrame("HKT線上教室 - DemoBorderLayout");
// 獲取螢幕解析度
Dimension dimension = Toolkit.getDefaultToolkit().getScreenSize();
// 設定視窗大小佔螢幕四分之一
frame.setSize(dimension.width / 2, dimension.height / 2);
//設定視窗顯示在螢幕畫面中間位置
int x = (int) ((dimension.getWidth() - frame.getWidth()) / 2);
int y = (int) ((dimension.getHeight() - frame.getHeight()) / 2);
frame.setLocation(x, y);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//設定關閉可以關掉程式
//在 Pane 畫面中加入元件
addComponentsToPane(frame.getContentPane());
// frame.pack();
frame.setVisible(true);
}
//最一開始程式進入點
public static void main(String[] args) {
//使用 invokeLater 確保 UI 在排程執行緒內
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
new DemoBorderLayout();
}
});
}
}
執行畫面
設定間距
BorderLayout(int horizontalGap, int verticalGap) : 定義元件之間具有指定間距的邊框佈局。
setHgap(int) : 設置元件之間的水平間距。
setVgap(int) : 設置元件之間的垂直間距。
setHgap(int) : 設置元件之間的水平間距。
setVgap(int) : 設置元件之間的垂直間距。
參考資料
那這次的課程就介紹到這邊囉~
順帶一提,KT 線上教室,臉書粉絲團,會不定期發佈相關資訊,不想錯過最新資訊,不要忘記來按讚,加追蹤喔!也歡迎大家將這套課程分享給更多人喔。
我們下次再見囉!!!掰掰~