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

📄 login.java

📁 此源码是个JAVA开发的简单聊天室。给大家参考
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
//import java.net.*;
import java.io.*;
import java.util.*;

public class Login extends JFrame implements ActionListener
{
	JPanel PLogin,PServer,PName,PBLogin;
	JLabel LServer,LName;
	JTextField TServer,TName;
	JButton B1,B2;
	ObjectOutputStream streamToServer;
	ObjectInputStream streamFromServer;
	ChatMessage msg;
	ChatClient cc;
	String messageType=new String();
	String ChatName=new String();
	static Vector vector=new Vector(1,1);
	
	public Login()
	{
		
		PLogin=new JPanel();
		PServer=new JPanel();
		PName=new JPanel();
		PBLogin=new JPanel();
		LServer=new JLabel("服务器:");
		LName=new JLabel("用户名:");
		TServer=new JTextField(12);
		TName=new JTextField(12);
		B1=new JButton("登陆");
		B2=new JButton("取消");
		
		PLogin.setLayout(new BorderLayout());	
		PServer.add(LServer);PServer.add(TServer);
		PName.add(LName);PName.add(TName);
		PBLogin.add(B1);PBLogin.add(B2);
		B1.addActionListener(this);
		B2.addActionListener(this);
		PLogin.add("North",PServer);
		PLogin.add("Center",PName);
		PLogin.add("South",PBLogin);
		
		
		Toolkit tk=Toolkit.getDefaultToolkit();
		Dimension d=tk.getScreenSize();
		int screenwidth=d.width;
		int screenheight=d.height;
		this.setLocation(screenwidth/3,screenheight/3);
		
		this.getContentPane().add(PLogin);
		this.setTitle("聊天室登陆");
		this.setSize(280,150);
		this.setVisible(true);
		this.setResizable(false);
		this.setDefaultCloseOperation(3);
	}
//按钮功能定义开始	
	public void actionPerformed(ActionEvent e)
	{
		Object source=e.getSource();
		if(source==B1)
		{
			if(checkLetterOrDigit(this,Msg().ChatName,3,8)==false)//Check用户名
			{
				JOptionPane.showMessageDialog(this,"  请按正确格式填写所有选项","填写错误",JOptionPane.ERROR_MESSAGE);
				TName.setText("");
			}
			else
			{
				this.dispose();	//关闭当前窗口
				cc=new ChatClient();
				cc.SentToServer(Msg());
			}	
		}
		else if(source==B2)
		{
			System.exit(0);
		}
	}
//按钮功能定义结束
//登陆发送状态和用户名开始
	public ChatMessage Msg()
		{
			//vector.addElement("所有人");
			ChatName=TName.getText();
			msg=new ChatMessage("Login",ChatName,null,null,null);
			return msg;
		}
//登陆发送状态和用户名结束

//测试登陆用户名开始
  	public static boolean checkLetterOrDigit(JFrame obj,String str,int min,int max)
  	{
		boolean reuls=true;
		int len=str.length();
		if(len==0||len<min||len>max)
		{
			reuls=false;
			return false;
		}
		for(int i=0;i<len;i++)
		{
			if(!Character.isLetterOrDigit(str.charAt(i)) && str.charAt(i)!='_')
			{
				//JOptionPane.showMessageDialog(obj,"  请按正确格式填写所有选项","填写错误",JOptionPane.ERROR_MESSAGE);
				reuls=false;
				return false;
			}
		}
  		return reuls;
  	}
//测试登陆用户名结束

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

⌨️ 快捷键说明

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