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

📄 client.java

📁 java 点对点聊天系统 可以用于局域网 同学之间通信
💻 JAVA
字号:
package net.client;

import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Client extends JFrame {

	ClientSocketOne cso;
	JTextArea textArea;
	JTextField textField;
	public Client() {
		super();
		setResizable(false);
		startClient(this);
		getContentPane().setLayout(null);
		setTitle("聊天(客户端)");

		final JLabel label = new JLabel();
		label.setText("Client聊天   o(∩_∩)o");
		label.setBounds(0, 0, 344, 28);
		getContentPane().add(label);

		final JScrollPane scrollPane = new JScrollPane();
		scrollPane.setBounds(0, 34, 344, 306);
		getContentPane().add(scrollPane);

		textArea = new JTextArea();
		textArea.setEditable(false);
		scrollPane.setViewportView(textArea);

		textField = new JTextField();
		textField.setBounds(0, 346, 266, 23);
		textField.addActionListener(new ActionListener(){
			
			public void actionPerformed(ActionEvent e) {
				read();
				
			}
			
		});
		getContentPane().add(textField);

		final JButton button = new JButton();
		button.setText("发送");
		button.setBounds(270, 345, 74, 25);
		button.addActionListener(new ActionListener(){

			public void actionPerformed(ActionEvent e) {
				read();
				
			}
			
		});
		getContentPane().add(button);
		
		this.addWindowListener(new WindowAdapter(){

			public void windowClosing(WindowEvent e) {
				// TODO Auto-generated method stub
				cso.close();
				System.exit(0);
			}
			
		});
		
		Dimension d = getToolkit().getScreenSize();
		
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		this.setLocation(d.getSize().width/2-Data.WIDTH/2, d.getSize().height/2-Data.HEIHT/2);
		System.out.println(d.getSize().width/2-Data.WIDTH);
		this.setSize(Data.WIDTH,Data.HEIHT);
		this.setVisible(true);
	}
	
	/**
	 * 发送数据
	 *
	 */
	private void read(){
		String st = textField.getText();
		if(!isBlank(st)){
			textArea.append("客户说: "+st+"\n");
			cso.rend(st);
			textField.setText("");
		}else{
			JOptionPane.showMessageDialog(null,"请不要发空信息!","发送错误",JOptionPane.ERROR_MESSAGE);
		}
	}
	
    /**
     * 
     * @判断发送是否为空
     * @return
     */
	private boolean isBlank(String st){
		if(st.trim().equals("")){
			//System.out.println("kong");
			return true;
		}else{
			return false;
		}
		
	}
	
	/**
	 * 开启客户端
	 *
	 */
	private void startClient(Client client){
		cso = new ClientSocketOne(client);
		cso.starts();
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		new Client();
	}

}

⌨️ 快捷键说明

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