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

📄 login.java

📁 聊天系统聊天系统聊天系统聊天系统聊天系统聊天系统聊天系统
💻 JAVA
字号:
package jclass;

import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;

import javax.swing.JButton;

import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;

public class Login extends JFrame {

	private JTextField textField_1;
	private JTextField textField;
	private JLabel label;
	private JButton confirm;
	private JButton exit;
	private JLabel label_1;
	/**
	 * Launch the application
	 * @param args
	 */
	public static void main(String args[]) throws Exception {
		//创建一个登陆窗口的实例
		Login log=new Login();
	}

	/**
	 * Create the frame
	 */
	
	
	//初始化成员变量,设置窗体属性
	private void init()
	{
		
		//设置窗体的属性
		//清除窗体的布局管理器
		getContentPane().setLayout(null);
		setBounds(100, 100, 324, 227);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setResizable(false);
		
		//获取屏幕大小,并设置窗体在屏幕中央显示
		Dimension screen=
			Toolkit.getDefaultToolkit().getScreenSize();
		setLocation((screen.width-getWidth())/2,(screen.height-getHeight())/2);
		
		//设置窗体可见
		setVisible(true);		
		
		
		//在窗体上添加一个标签,提示用户输入用户名
		label = new JLabel();
		label.setFont(new Font("", Font.BOLD, 16));
		label.setText("请输入用户名:");
		label.setBounds(9, 30, 119, 38);
		getContentPane().add(label);
		
		//在窗体上添加一个单行文本输入框,用以接受用户输入的用户名
		textField = new JTextField();
		textField.setBounds(130, 31, 155, 38);
		getContentPane().add(textField);
		

		JLabel label_1 = new JLabel();
		label_1.setFont(new Font("", Font.BOLD, 16));
		label_1.setText("服务器地址:");
		label_1.setBounds(14, 88, 102, 28);
		getContentPane().add(label_1);

		textField_1 = new JTextField();
		textField_1.setText("不填表示本地");
		textField_1.setBounds(130, 86, 155, 37);
		getContentPane().add(textField_1);
		
		
		//创建一个"确定"按钮
		confirm = new JButton();	
		confirm.setActionCommand("comfirm");
		confirm.setText("确定");
		confirm.setBounds(40, 140, 88, 28);
		getContentPane().add(confirm);

		
		//在窗体上添加一个“退出”按钮
		exit = new JButton();
		exit.setActionCommand("exit");
		exit.setText("退出");
		exit.setBounds(176, 140, 88, 28);
		getContentPane().add(exit);
	}
	
	
	//为成员变量添加事件监听器
	private void addListeners()
	{
		confirm.addActionListener(new ActionListener() {
		public void actionPerformed(final ActionEvent e) {
			if(textField.getText().equals("")||textField.getText().equals("请输入用户名:"))
				//当用户名没有输入或不正确时,提示用户输入用户名
				textField.setText("请输入用户名:");
			else
			{
				//建立一个对话界面,进行用户间的交流
				//首先创建连到服务器的socket,并把它通过
				//构造方法传给对话界面
				Socket socket=null;
				try {
					if(textField_1.getText().equals("不填表示本地")
							||textField_1.getText().equals(""))
						socket = new Socket("127.0.0.1",8080);
					else
						socket = new Socket(textField_1.getText(),8080);
				} catch (UnknownHostException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				} catch (IOException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				}
				new ChatInterface(textField.getText(),socket).setVisible(true);
				//隐藏本窗口,剩余的操作交由对话界面处理
				setVisible(false);
			}
		}
		});
		
		exit.addActionListener(new ActionListener() {
		public void actionPerformed(final ActionEvent e) {
			//用户按下这个按钮时,退出程序。
			System.exit(0);
		}
		});	
		
	}
	
	public Login() {
		super();
		init();
		addListeners();

	}

}

⌨️ 快捷键说明

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