public class Main extends JFrame { //
	
	private final String menuBarXML = "conf/menubar.xml";
	private final String outlookPanelXML = "conf/outlook.xml";
	private ContainerPanel container; // ??????
	public MyStatusBar statusBar; // ????????
	private MyMenuBar menubar; //
	private TabPanel tabPanel;
	private OutlookPanel outlookPanel;
	static Point lastPoint = null;
	private String username;
	public Main(String username) { // 构造函数
		this.username = username;  //第一步设置username的值
		container = new ContainerPanel(); // 初始化外部窗口容器
		container.setBorder(BorderFactory.createMatteBorder(1, 2, 2, 2, new Color(55,155,11))); //边框
		setContentPane(container);
		setTitle("Checount DV2.0");
		setDefaultCloseOperation(3);
		setSize(780, 500);
		
		setUndecorated(true); // 设置窗口无边缘
		setLocationRelativeTo(null);  //正中显示
		addMouseListener(new MouseAdapter() {
			@Override
			public void mousePressed(MouseEvent e) {
				lastPoint = e.getLocationOnScreen();
			}
		});
		addMouseMotionListener(new MouseMotionListener() {
			@Override
			public void mouseDragged(MouseEvent e) {
				Point point = e.getLocationOnScreen(); // 这个是持续移动的点
				int offsetX = point.x - lastPoint.x;
				int offsetY = point.y - lastPoint.y;
				Rectangle bounds = Main.this.getBounds();
				Main.this.setLocation(bounds.x + offsetX, bounds.y + offsetY);
				lastPoint = point;
			}
			@Override
			public void mouseMoved(MouseEvent e) {
			}
		});
		setIconImage(UUtils.getImage("ui/images/logo.png")); // 设置标题栏图标
		initMenubar(); // 初始化菜单栏
		initTab(); // 初始化标签栏
		initOutlookPanel(); // 初始化左侧导航栏
		initStatusbar(); // 初始化状态栏
	}
	private void initMenubar() { // 初始化菜单栏
		menubar = UUtils.loadMenuBar(menuBarXML, new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if (e.getActionCommand().contains("tab")) {
					String commands = e.getActionCommand();
					if (commands.equals("tab_today")) {
						if (-1 == tabPanel.indexOfTab("今日"))   //不存在则新添
							tabPanel.addTab("今日", UUtils.getImageIcon("ui/images/submodule.png"), createTrapPage(new JPanel()));
						tabPanel.setSelectedIndex(tabPanel.indexOfTab("今日"));
					}else if (commands.equals("tab_history")) {
						if (-1 == tabPanel.indexOfTab("历史")) 
							tabPanel.addTab("历史", UUtils.getImageIcon("ui/images/submodule.png"),createHistoryPage());
						tabPanel.setSelectedIndex(tabPanel.indexOfTab("历史"));
					}else if (commands.equals("tab_statistic")) {
						if (-1 == tabPanel.indexOfTab("统计"))
							tabPanel.addTab("统计", UUtils.getImageIcon("ui/images/submodule.png"), createStatisticPage(new JPanel()));
						tabPanel.setSelectedIndex(tabPanel.indexOfTab("统计"));
					}else if(commands.equals("tab_browser")){
						if (-1 == tabPanel.indexOfTab("浏览网络"))
							tabPanel.addTab("浏览网络", UUtils.getImageIcon("ui/images/submodule.png"), createPage(new JPanel()));
						tabPanel.setSelectedIndex(tabPanel.indexOfTab("浏览网络"));
					}
				} else MenubarAction.executeByCommand(e.getActionCommand()); // 其余的转至Acton中执行
			}
		});
		container.add(menubar, "North");
	}