天天看點

java jframe pack_Java Swing實戰(一)JFrame和JTabbedPane容器

概述:

項目是一個桌面程式,涉及标簽和按鈕元件、布局管理器元件、面闆元件、清單框和下拉框元件等元件,以及Swing事件處理機制。

下面先從最基礎的界面開始。

public class WeimingSyncApplets {

public static void main(String[] args) {

// 面闆元件

JPanel taskPanel = new JPanel();

JPanel dbPanel = new JPanel();

JTabbedPane tabbedPane = buildJTabbedPane(taskPanel, dbPanel);

buildFrame(tabbedPane);

}

private static JTabbedPane buildJTabbedPane(JPanel taskPanel, JPanel dbPanel) {

// 頁籤面闆

JTabbedPane tabbedPane = new JTabbedPane();

// 通過BorderFactory來設定邊框的特性

tabbedPane.setBorder(BorderFactory.createEmptyBorder(10, 10, 10, 10));

tabbedPane.add("執行任務", taskPanel);

tabbedPane.add("資料源配置", dbPanel);

return tabbedPane;

}

private static void buildFrame(JComponent component) {

// 窗體容器

JFrame frame = new JFrame("資料同步工具");

frame.add(component);

// JFrame.EXIT_ON_CLOSE 退出

// JFrame.HIDE_ON_CLOSE 最小化隐藏

frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);

// 設定布局

frame.getContentPane().setLayout(new BorderLayout());

frame.getContentPane().add(BorderLayout.CENTER, component);

// 設定視窗最小尺寸

frame.setMinimumSize(new Dimension(1060, 560));

// 調整此視窗的大小,以适合其子元件的首選大小和布局

frame.pack();

// 設定視窗相對于指定元件的位置

frame.setLocationRelativeTo(null);

frame.setVisible(true);

// 設定視窗尺寸是否固定不變

frame.setResizable(true);

}

}

效果如圖:

java jframe pack_Java Swing實戰(一)JFrame和JTabbedPane容器