1. 程式人生 > >即時內部聊天程式——登入介面

即時內部聊天程式——登入介面

package Z0929;

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

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;


public class DengLujm extends JFrame {
	private JLabel usernamejlabal;
	private JLabel passwordjlabal;
	private JLabel touxiang;
	private JLabel zhuce;
	private JTextField usernameField;
	private JPasswordField passwordField;
	private JButton denglu;

	public DengLujm() {

		// 新增元件
		setTitle("使用者登入介面");
		setSize(440, 340);
		setLocation((1366 - 440) / 2, (768 - 340) / 2);
		setDefaultCloseOperation(2);
		setResizable(true);
		setUndecorated(false);

		touxiang = new JLabel();
		touxiang.setIcon(new ImageIcon("d:/1.jpg"));

		// 佈局
		JPanel jp = new JPanel();
		usernamejlabal = new JLabel("賬號");
		passwordjlabal = new JLabel("密碼");
		zhuce = new JLabel("點此 \n註冊      ");//想要達到換行,但沒成功。。。
		
		JPanel jp2=new JPanel();
		jp2.setLayout(new GridLayout(0,3));
		denglu = new JButton("登入");
		jp2.add(new JLabel("   "));
		jp2.add(denglu );
		jp2.add(new JLabel("   "));
		jp2.add(new JLabel("   "));
		jp2.add(new JLabel("   "));
		jp2.add(new JLabel("   "));
		
		
		JTextField usernameField=new JTextField();
		JPasswordField passwordField=new JPasswordField();
		jp.setLayout(new GridLayout(0, 2));
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));
		jp.add(usernamejlabal);
		jp.add(usernameField);
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));
		jp.add(passwordjlabal);
		jp.add(passwordField);
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));
		jp.add(new JLabel("   "));

		add(jp2 , BorderLayout.SOUTH);
		add(jp);
		add(zhuce, BorderLayout.EAST);
		add(touxiang, BorderLayout.WEST);

		
		zhuce.addMouseListener(new MouseListener() {

			public void mouseClicked(MouseEvent e) {
				DengLujm.this.dispose();
				new Zhuce();
			}
			public void mouseReleased(MouseEvent e) {
			}
			public void mousePressed(MouseEvent e) {
			}
			public void mouseExited(MouseEvent e) {
			}
			public void mouseEntered(MouseEvent e) {
			}
		});
		denglu .addActionListener(new ActionListener() {

			public void actionPerformed(ActionEvent e) {
				//傳送登入資訊
				String message = 2 + " " + usernameField.getText() + " " + passwordField.getText();
				MessageIO io = new MessageIO();
				io.SendMessage(message);
				//接收伺服器返回的登入資訊
				String jieshou = io.ReceriveMessag();
				if (jieshou.equals("y")) {
					JOptionPane.showMessageDialog(DengLujm.this, "登入成功");
					DengLujm.this.dispose();
					new QQk();
				} else if (jieshou.equals("n")) {
					JOptionPane.showMessageDialog(DengLujm.this, "賬號或密碼錯誤,請重新輸入");
					return;
				}
			}
		});
		setVisible(true);
	}

	public static void main(String[] args) {
		new DengLujm();

	}

}