⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loginpanel.java

📁 这是一个功能不错的多人聊天室.可以多人联机
💻 JAVA
字号:
package net.yangzhe.chatSocket;
import java.io.IOException;
import java.net.InetAddress;
import java.net.UnknownHostException;

import javax.swing.JPanel;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;

public class LoginPanel extends JPanel {

	private JLabel jLabel = null;
	private JLabel jLabel1 = null;
	private JTextField jTextField = null;
	private JTextField jTextField1 = null;
	private JButton jButton = null;
	private JLabel jLabel2 = null;
	private JButton jButton1 = null;
	private String serverip;
	private Client client;

	/**
	 * This is the default constructor
	 * @param ip 
	 * @throws IOException 
	 * @throws UnknownHostException 
	 */
	public LoginPanel(String ip) throws UnknownHostException, IOException {
		super();
		serverip=ip;
		
		initialize();
		
		
	}

	/**
	 * Unused now.   by yangzhe
	 * @throws UnknownHostException
	 * @throws IOException
	 */
	public LoginPanel() throws UnknownHostException, IOException {
		super();
		
		initialize();
		//client=new Client(InetAddress.getByName(serverip));
	}

	public void connectServer(String ip) throws UnknownHostException, IOException{
		serverip=ip;
		client=new Client(InetAddress.getByName(serverip));
	}
	/**
	 * This method initializes this
	 * 
	 * @return void
	 */
	private void initialize() {
		jLabel2 = new JLabel();
		jLabel2.setBounds(new java.awt.Rectangle(44,12,209,44));
		jLabel2.setText("连接成功,请输入昵称和密码");
		jLabel1 = new JLabel();
		jLabel1.setBounds(new java.awt.Rectangle(30,127,60,35));
		jLabel1.setText("登陆密码");
		jLabel = new JLabel();
		jLabel.setBounds(new java.awt.Rectangle(32,72,57,33));
		jLabel.setText("昵称");
		this.setLayout(null);
		this.setSize(307, 242);
		this.add(jLabel, null);
		this.add(jLabel1, null);
		this.add(getJTextField(), null);
		this.add(getJTextField1(), null);
		this.add(getJButton(), null);
		this.add(jLabel2, null);
		this.add(getJButton1(), null);
	}

	/**
	 * This method initializes jTextField	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField() {
		if (jTextField == null) {
			jTextField = new JTextField();
			jTextField.setBounds(new java.awt.Rectangle(111,74,150,35));
		}
		return jTextField;
	}

	/**
	 * This method initializes jTextField1	
	 * 	
	 * @return javax.swing.JTextField	
	 */
	private JTextField getJTextField1() {
		if (jTextField1 == null) {
			jTextField1 = new JTextField();
			jTextField1.setBounds(new java.awt.Rectangle(112,126,149,36));
		}
		return jTextField1;
	}

	/**
	 * This method initializes jButton	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton() {
		if (jButton == null) {
			jButton = new JButton();
			jButton.setBounds(new java.awt.Rectangle(157,190,110,34));
			jButton.setText("登陆");
			jButton.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {					
					client.sendNews("%2%2");
					client.sendNews(jTextField.getText());
					client.sendNews(jTextField1.getText());
					String result;
					try {
						result = client.getNews();
						
						if(result.equals("%4%4")){
							client.sendNews("%end");
							jLabel2.setText("登陆成功");
							try {
								Thread.sleep(1000);
								//hide();
								setEnabled(false);
								jButton.setEnabled(false);
								jButton1.setEnabled(false);
								jTextField.setEditable(false);
								jTextField1.setEditable(false);
								String uname=jTextField.getText();
								ChatFrame l = new ChatFrame(serverip,uname);
								l.show();
								client.server.close();
								
							} catch (Exception e1) {
								// TODO Auto-generated catch block
								e1.printStackTrace();
							}
						}else{
							jLabel2.setText("密码错误");
						}
					} catch (IOException e1) {
						// TODO Auto-generated catch block
						e1.printStackTrace();
					}
					
					System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
				}
			});
		}
		return jButton;
	}

	/**
	 * This method initializes jButton1	
	 * 	
	 * @return javax.swing.JButton	
	 */
	private JButton getJButton1() {
		if (jButton1 == null) {
			jButton1 = new JButton();
			jButton1.setBounds(new java.awt.Rectangle(29,190,105,36));
			jButton1.setText("创建此用户");
			jButton1.addActionListener(new java.awt.event.ActionListener() {
				public void actionPerformed(java.awt.event.ActionEvent e) {
					if(jTextField.getText().equals("")&&jTextField1.getText().equals("")){
						jLabel2.setText("用户名或密码未填");
					}else{
						client.sendNews("%1%1");
						client.sendNews(jTextField.getText());
						client.sendNews(jTextField1.getText());
						try {
							String result=client.getNews();
							if(result.equals("%5%5")){
								jLabel2.setText("此用户已存在,不能创建!");
							}else{
								jLabel2.setText("创建成功!请登陆");
							}
						} catch (IOException e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						}
					}
					
					System.out.println("actionPerformed()"); // TODO Auto-generated Event stub actionPerformed()
				}
			});
		}
		return jButton1;
	}

}  //  @jve:decl-index=0:visual-constraint="10,27"

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -