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

📄 login.java

📁 这是本人在书上找到的项目,是一个网络聊天的程序.
💻 JAVA
字号:
/*
 * Login.java
 *
 * Created on 2007年12月2日, 下午10:03
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package appserver;

/**
 *
 * @author user
 */
//import classes

//导入相关包
//导入相关Java包

import java.io.*;
import java.net.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.util.*;
import javax.swing.Timer;

public class Login extends JFrame implements ActionListener
{

	//声明图形组件

	JLabel lblUserName;
	JLabel lblUserPwd;
	JTextField txtUsrName;
	JPasswordField txtUsrPwd;
	JButton btnLogin;
	JButton btnCancel;
	JButton btnRegister;
	String UsrName;
	char[] UsrPwd;
	String strPwd;

	Socket toServer;
	ObjectInputStream streamFromServer;
	PrintStream streamToServer;


	public Login()
	{
		this.setTitle("登录"); //设置标题
		JPanel panel = new JPanel();

		panel.setLayout(new GridBagLayout());
		GridBagConstraints gbCons = new GridBagConstraints();

		//在frame上放置图形组件
		gbCons.gridx = 0;
		gbCons.gridy = 0;
		lblUserName = new JLabel("输入用户名:");
		panel.add(lblUserName, gbCons);

		gbCons.gridx = 1;
		gbCons.gridy = 0;
		txtUsrName = new JTextField(20);
		panel.add(txtUsrName, gbCons);

		gbCons.gridx = 0;
		gbCons.gridy = 1;
		lblUserPwd = new JLabel("输入密码:");
		panel.add(lblUserPwd, gbCons);

		gbCons.gridx = 1;
		gbCons.gridy = 1;
		txtUsrPwd = new JPasswordField(20);
		panel.add(txtUsrPwd, gbCons);

		JPanel btnPanel = new JPanel();
		btnLogin = new JButton("登录");
		btnPanel.add(btnLogin);
		btnLogin.addActionListener(this); //为登录按钮添加监听器
		btnRegister = new JButton("注册");
		btnPanel.add(btnRegister);
		btnRegister.addActionListener(this); //为注册按钮添加监听器
		btnCancel = new JButton("取消");
		btnPanel.add(btnCancel);
		btnCancel.addActionListener(this); //为取消按钮添加监听器

		gbCons.gridx = 1;
		gbCons.gridy = 3;
		gbCons.anchor = GridBagConstraints.EAST;
		panel.add(btnPanel, gbCons);
		getContentPane().add(panel);
		setSize(450, 200);
		setVisible(true);
		setDefaultCloseOperation(EXIT_ON_CLOSE);
	}

	//显示错误信息
	void showdlg()
	{
		JOptionPane.showMessageDialog(this, "用户名或密码非法", "错误消息", JOptionPane.ERROR_MESSAGE);
	}


	public void actionPerformed(ActionEvent e1)
	{
		JButton button = (JButton)e1.getSource();
		if (button.equals(btnCancel))
		{
			this.dispose(); //关闭当前窗体
		}
		else if (button.equals(btnRegister))
		{
			new Register(); //调用注册程序
			this.dispose();
		}
		else
		{

			try
			{
				//创建socket和对应的输入输出流
				toServer = new Socket("wgqr-7f254dd399", 1001);
				streamFromServer = new ObjectInputStream(toServer.getInputStream());
				streamToServer = new PrintStream(toServer.getOutputStream());

				//登录时向服务器发送消息
				streamToServer.println("LoginInfo");
				UsrName = txtUsrName.getText();
				UsrPwd = txtUsrPwd.getPassword();
				strPwd = new String(UsrPwd);

				//向服务器发送用户名和密码
				streamToServer.println(UsrName + ":" + strPwd);

				//读取从服务器发回的消息
				String frmServer = (String)streamFromServer.readObject();
                                  
                                
                                
				if (frmServer.equals("Welcome"))
				{
					new clientInt(UsrName); //开启聊天界面
					this.dispose();
				}
				else
				{
                                      //开启聊天界面
					
					showdlg();//显示错误信息
				}

			}//end of try
			catch (Exception e)
			{
				System.out.println("发生异常: " + e);
			}
		}//end of if..else
	}//end of actionPerformed
	public static void main(String args[])
	{
		new Login();
	}
}//end of class Login

⌨️ 快捷键说明

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