概述:html
項目是一個桌面程序,涉及標籤和按鈕組件、佈局管理器組件、面板組件、列表框和下拉框組件等組件,以及Swing事件處理機制。工具
下面先從最基礎的界面開始。佈局
/**
*
@author: lishuai
*
@date: 2018/11/26 13:51
*/
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);
}
}
效果以下圖: