第06講 考試系統之UI5用戶註冊界面的實現

  1. 用戶註冊UI
    代碼實現:
package com.zjipc.kaoshi.ui;

import java.awt.BorderLayout;
import java.awt.Component;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import java.awt.Image;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.IOException;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;

public class RegistFrame extends JFrame {
	public static void main(String[] args) {
		RegistFrame window = new RegistFrame();
		window.setVisible(true);
	}

	private JLabel exist;
	private JTextField nameField;
	private JPasswordField pwdField;
	private JTextField phoneField;
	private JTextField emialField;
	private JTextField idField;

	public RegistFrame() {
		init();
	}

	private void init() {
		setTitle("ZJIPC認證軟件開發工程師考試平臺");
		setSize(600, 300);
		try {
			Image image = ImageIO.read(getClass().getResource("../images/inco.jpg"));
			setIconImage(image);
		} catch (IOException e) {
			e.printStackTrace();
		}
		setLocationRelativeTo(null);
		setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
		add(createContentPanel());
		addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				if (JOptionPane.YES_OPTION == JOptionPane.showConfirmDialog(RegistFrame.this, "確定要退出嗎?", "離開系統",
						JOptionPane.YES_NO_OPTION)) {
					System.exit(0);
				}
			}
		});
		setResizable(false);
	}

	private Component createContentPanel() {
		JPanel panel = new JPanel(new BorderLayout());
		ImageIcon icon = new ImageIcon(RegistFrame.class.getResource("../images/exam_title.png"));
		panel.add(BorderLayout.NORTH, new JLabel(icon));
		panel.add(BorderLayout.CENTER, createCenterPanel());
		panel.add(BorderLayout.SOUTH, createBottomPanel());
		return panel;
	}

	private Component createCenterPanel() {
		JPanel panel = new JPanel(new BorderLayout());
		panel.setBorder(new EmptyBorder(8, 8, 8, 8));
		ImageIcon icon = new ImageIcon(RegistFrame.class.getResource("../images/left.png"));
		panel.add(BorderLayout.WEST, new JLabel(icon));
		panel.add(BorderLayout.CENTER, createRegistPanel());
		exist = new JLabel("", JLabel.CENTER);
		panel.add(BorderLayout.SOUTH, exist);
		return panel;
	}

	private Component createRegistPanel() {
		JPanel panel = new JPanel(new GridLayout(5, 1, 0, 6));
		panel.setBorder(new EmptyBorder(8, 8, 8, 8));
		panel.add(createIdPanel());
		panel.add(createNamePanel());
		panel.add(createPwdPanel());
		panel.add(createPhonePanel());
		panel.add(createEmailPanel());
		return panel;
	}

	private Component createIdPanel() {
		JPanel panel = new JPanel(new BorderLayout());
		panel.add(BorderLayout.WEST, new JLabel("考         號:"));
		idField = new JTextField(10);
		panel.add(BorderLayout.CENTER, idField);
		return panel;
	}

	private Component createNamePanel() {
		JPanel panel = new JPanel(new BorderLayout());
		panel.add(BorderLayout.WEST, new JLabel("姓         名:"));
		nameField = new JTextField(10);
		panel.add(BorderLayout.CENTER, nameField);
		return panel;
	}

	private Component createPwdPanel() {
		JPanel panel = new JPanel(new BorderLayout());
		panel.add(BorderLayout.WEST, new JLabel("密         碼:"));
		pwdField = new JPasswordField();
		pwdField.enableInputMethods(true);
		panel.add(BorderLayout.CENTER, pwdField);
		return panel;
	}

	private Component createPhonePanel() {
		JPanel panel = new JPanel(new BorderLayout());
		panel.add(BorderLayout.WEST, new JLabel("電         話:"));
		phoneField = new JTextField(10);
		panel.add(BorderLayout.CENTER, phoneField);
		return panel;
	}

	private Component createEmailPanel() {
		JPanel panel = new JPanel(new BorderLayout());
		panel.add(BorderLayout.WEST, new JLabel("郵         箱:"));
		emialField = new JTextField(10);
		panel.add(BorderLayout.CENTER, emialField);
		return panel;
	}

	private Component createBottomPanel() {
		JPanel panel = new JPanel(new FlowLayout());
		JButton submit = new JButton("註冊");
		JButton cancel = new JButton("取消");
		panel.add(submit);
		panel.add(cancel);
		return panel;
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章