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

📄 chatclient.java

📁 用Applet实现IM(在本地)(简单的socket编成) 用eclipes3.2 + tomcat5.5调试成功
💻 JAVA
字号:
package chat;



import java.net.*;
import java.io.*;
import javax.swing.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ChatClient extends Applet implements Runnable{
	//Container cont = this.getContentPane();
	JButton buttonSendMessage = new JButton("Send Message");
	JTextField textField = new JTextField();
	JTextArea textArea = new JTextArea();
	JScrollPane scrollPane = new JScrollPane();
	
	
	Socket con = null;
	ObjectOutputStream output = null;
	ObjectInputStream input = null;

	public void init(){
		//this.setTitle("IM Client");
		this.setLayout(null);
		textField.setBounds(20, 20, 200, 30);
		textArea.setBounds(20, 70, 300, 150);
		textArea.setEditable(false);
		textArea.setLineWrap(true);
		scrollPane.setBounds(20, 70, 300, 150);	
		buttonSendMessage.setBounds(250, 20, 120, 30);
		buttonSendMessage.addActionListener(new buttonSendMessage_ActionListener());
		this.add(buttonSendMessage,null);
		this.add(textField,null);
		this.add(textArea,null);
		this.add(scrollPane,null);
	
		scrollPane.getViewport().add(textArea);
		//this.setSize(400,300);
		//this.setVisible(true);
		new Thread(this).start();
	}
	
	public void run(){
		try{
			con = new Socket("localhost",8000);
			textArea.insert("与服务器连接成功!\n",textArea.getText().length());	
			output = new ObjectOutputStream(con.getOutputStream());
			input = new ObjectInputStream(con.getInputStream());
			
			output.writeObject("<Client said:>\n");
			output.flush();
			output.writeObject("Hello!\n");
			output.flush();
			
			String msg = (String)input.readObject();
			while(!msg.equals("quit")){
				textArea.insert(msg,textArea.getText().length());
				textArea.moveCaretPosition(textArea.getText().length());
				msg = (String)input.readObject();
			}
			
			output.close();
			input.close();
			con.close();
		}catch(Exception e){
			System.out.println(e);
		}
	}
	
	public void SendMessage(){
		String str = textField.getText();
		textArea.insert("<Client said:>\n",textArea.getText().length());
		textArea.insert(str+"\n",textArea.getText().length());
		textField.setText("");
		textArea.moveCaretPosition(textArea.getText().length());
		try{
			output.writeObject("<Client said:>\n");
			output.flush();
			output.writeObject(str+"\n");
			output.flush();
		}catch(Exception e){
			System.out.println(e);
		}
	}
	
	class buttonSendMessage_ActionListener implements ActionListener{
		public void actionPerformed(ActionEvent e){			
			SendMessage();
		}
	}
	/*
	public static void main(String args[]){
		new ChatClient();
	}
	*/
}

⌨️ 快捷键说明

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