亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chatclient.java

?? 此源碼是個JAVA開發的簡單聊天室。給大家參考
?? JAVA
字號:
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.net.*;
import java.util.*;

public class ChatClient extends Thread implements ActionListener//ListSelectionListener
{
		private JFrame FClient;
		private JPanel PClient;
		//private JPanel PUser;
		private JPanel PChat;
		private JPanel PWin;
		private JPanel PChat1;
		private JPanel PChat2;
		private JTextArea TPub_win,TMy_win;
		private JScrollPane sp2,sp3;
		private JList LUser;
		private JTextField T2,TChater;
		private JLabel L1,L2,L3,LChater;
		private JButton B1,B2;
		//private JComboBox CFace;
					 //String chatname;
					 //ChatMessage msg=new ChatMessage();
					String messageType=new String();
					String ChatName=new String();
					String ToChatName=new String();
					String ChatMsg=new String();
					String ChatFace=new String();
					ObjectOutputStream ToServer;
					ObjectInputStream FromServer;
		static Vector vector=new Vector(1,1);
					Socket toServer;
					String server="127.0.0.1";
		public ChatClient()
		{
			try
			{
				
				toServer=new Socket(server,1001);
				ToServer=new ObjectOutputStream(toServer.getOutputStream());
				FromServer=new ObjectInputStream(toServer.getInputStream());
			}
			catch(Exception e)
			{
				JOptionPane.showMessageDialog(FClient," 服務器沒有打開 ","服務器連接錯誤",JOptionPane.ERROR_MESSAGE);
				System.exit(0);
				System.out.println("Error: "+e);
			}
			
						
			//******************************
			//界面開始
			//******************************
			FClient=new JFrame();
			PClient=new JPanel();
//			PUser=new JPanel();
			PChat=new JPanel();
			PWin=new JPanel();
			PChat1=new JPanel();
			PChat2=new JPanel();
			TPub_win=new JTextArea();
			TPub_win.setEditable(false);
			//TMy_win=new JTextArea();
			//TMy_win.setEditable(false);
			//sp1=new JScrollPane();
			sp2=new JScrollPane(TPub_win);
			//sp3=new JScrollPane(TMy_win);
			LUser=new JList();
			LUser.setFixedCellWidth(150);
			//T1=new JTextField("a");
			T2=new JTextField(30);
			L1=new JLabel("我對");
			L2=new JLabel("說:");
			//L3=new JLabel();
			B1=new JButton("發送");
			B2=new JButton("退出");
			//String Expression[]={" ","微笑著","友好的","憤怒的","無奈的","傻笑著","悲傷的","高興的","不耐煩的","興高彩烈的","神秘兮兮的","傷心欲絕的","破口大罵的","得意洋洋的"};
			TChater=new JTextField("所有人");
			TChater.setEditable(false);
			LChater=new JLabel();
			//CUser=new JComboBox();
			//CFace=new JComboBox(Expression);						
			FClient.getContentPane().add(PClient);		
			//PUser.setLayout(new BorderLayout());
			//sp1=new JScrollPane(LUser);		
			//PUser.add("Center",sp1);		
			PWin.setLayout(new BorderLayout());
			JSplitPane jsp=new JSplitPane(JSplitPane.VERTICAL_SPLIT,sp2,sp3);
			jsp.setDividerLocation(300);
			PWin.add(jsp);
			
			//PChat.setLayout(new BorderLayout());
			PChat1.add(LChater);
			//PChat1.add(L3);
			PChat1.add(L1);
			PChat1.add(TChater);
			//PChat1.add(CFace);
			PChat1.add(L2);
			PChat1.add(T2);
			PChat1.add(B1);
			PChat1.add(B2);
			B1.addActionListener(this);
			B2.addActionListener(this);
			T2.addKeyListener(new VKENTER());
			//LUser.addListSelectionListener(this);
			PChat.add(PChat1);
			
			FClient.addWindowListener(new WindowAdapter(){
			public void windowClosing(WindowEvent e)
			{
				try
				{
					if(LChater.getText().length()!=0)
					{
						ChatMessage msg=new ChatMessage("LoginOut",LChater.getText(),null,null,null);
						SentToServer(msg);
						System.out.println("Close window");
						System.exit(0);
					}
				}
				catch(Exception ex)
				{
					System.out.println("Error: "+ex);
				}
			}
			});
			
			
			PClient.setLayout(new BorderLayout());
			//PClient.add("West",PUser);
			PClient.add("Center",PWin);
			PClient.add("South",PChat);
			
			Toolkit tk=Toolkit.getDefaultToolkit();
			Dimension d=tk.getScreenSize();
			int screenwidth=d.width;
			int screenheight=d.height;
			FClient.setLocation(screenwidth/8,screenheight/8);
			
			FClient.setTitle("聊天室客戶端");
			FClient.setSize(600,500);
			FClient.setVisible(true);
			FClient.setDefaultCloseOperation(3);
			//******************************
			//界面結束
			//******************************
			//vector.addElement("所有人");
			this.start();
		}

		public void actionPerformed(ActionEvent e)
		{
			Object source=e.getSource();		
			if(source==B1)//發送聊天信息
				{
					try
					{
						if(T2.getText().length()==0)
						{
							JOptionPane.showMessageDialog(FClient,"  不 能 發 空 消 息 !","內容為空",JOptionPane.NO_OPTION);
						}
						else
						{
							SentToServer(Msg());
						}
					}
					catch(Exception ex)
					{
						System.out.println("Error: "+ex);
					}
				}
			else if(source==B2)//退出聊天
			{
				try
				{
					ChatMessage msg=new ChatMessage("LoginOut",LChater.getText(),null,null,null);
					SentToServer(msg);
					System.exit(0);
				}
				catch(Exception ex)
				{
					System.out.println("Error: "+ex);
				}
			}
		}
		
		public void run()
		{
			try
			{
				while(true)
				{	
					ChatMessage msg=(ChatMessage)FromServer.readObject();//讀取流中的內容
//					System.out.println("messageType"+" "+msg.messageType);
//					System.out.println("ChatName"+" "+msg.ChatName);
//					System.out.println("ToChatName"+" "+msg.ToChatName);
//					System.out.println("vector"+" "+msg.vector);
//					System.out.println("-------------------------------------");
					if(msg.messageType.equals("Login"))
					{
						addLUser(msg);
					}
					else if(msg.messageType.equals("toall"))
					{
						if(msg.ToChatName.equals("所有人"))
						{
							TPub_win.append(msg.ChatMsg+"\n");
						}
						else
						{
							if(msg.ToChatName.equals(LChater.getText())||msg.ChatName.equals(LChater.getText()))
							{
								TMy_win.append(msg.ChatMsg+"\n");
							}	
						}			
					}
					else if(msg.messageType.equals("LoginOut"))
					{
						addLUser(msg);
						TPub_win.append(msg.ChatName+" 離開了聊天室"+"\n");
					}
					else if(msg.messageType.equals("Closed"))
					{
						TPub_win.append(" 服務器已經關閉 "+"\n");
						toServer.close();
					}
					/*
					else if(msg.messageType.equals("Error"))
					{
						if(!TChater.getText().equals(msg.ChatName))
						{
							JOptionPane.showMessageDialog(FClient," 用戶名重復 ","關于",JOptionPane.INFORMATION_MESSAGE);
							System.exit(0);
						}
						
					}*/
				}
			}
			catch(Exception e)
			{}
		}
		class VKENTER extends KeyAdapter
		{
			public void keyPressed(KeyEvent e)
			{
				if(e.getKeyCode()==KeyEvent.VK_ENTER)
				{
					SentToServer(Msg());	
				}
			}
		}
		
//發送給服務器	
		public void SentToServer(ChatMessage cm)
		{
			try
			{
				ChatMessage toServer=cm;
				if(toServer.messageType.equals("Login"))
				{
					TPub_win.append("歡迎"+cm.ChatName+"進入聊天室"+"\n");
					ToServer.writeObject(toServer);
					LChater.setText(toServer.ChatName);
				}
				else if(toServer.messageType.equals("toall"))
				{
//					if(toServer.ChatName.equals(toServer.ToChatName))
//					{
//						TMy_win.append("不能對自己私聊"+"\n");
//					}
				//	else
				//	{
						ToServer.writeObject(toServer);
				//	}
				}
				
				else if(toServer.messageType.equals("LoginOut"))
				{
					
					ToServer.writeObject(toServer);
				}
				
			}
			catch(Exception e)
			{}
		}
//向列表添加用戶,在狀態欄顯示在線人數	
		void addLUser(ChatMessage cm)
		{
			if(cm.messageType.equals("Login"))
			{
				vector=cm.vector;
				LUser.removeAll();
				LUser.setListData(vector);
				if(!LChater.getText().equals(cm.ChatName))
				{
					vector.addElement(cm.ChatName);
					LUser.removeAll();
					LUser.setListData(vector);
					int i=vector.size();
					TPub_win.append("歡迎"+cm.ChatName+"進入聊天室"+"\n");
					//L3.setText("現在共有"+(i-1)+"人");
				}
//				else
//				{
//					int i=vector.size();
//					L3.setText("現在共有"+(i-1)+"人");
//				}
			}
			else if(cm.messageType.equals("LoginOut"))
			{
//				vector=cm.vector;
				vector.remove(cm.ChatName);
				LUser.removeAll();
				LUser.setListData(vector);
				int i=vector.size();
				TPub_win.append("歡迎"+cm.ChatName+"進入聊天室"+"\n");
				//L3.setText("現在共有"+(i-1)+"人");
			}
		}
		
//	獲取頁面的內容
	  public ChatMessage Msg()
		  {
			  
			  ChatName=LChater.getText();//說話人
			  ToChatName=TChater.getText();//和誰說
			  //ChatFace=(String)CFace.getSelectedItem();
			  ChatMsg=ChatName+"對"+ToChatName+ChatFace+"說:"+T2.getText();//聊天內容
			  ChatMessage msg=new ChatMessage("toall",ChatName,ToChatName,ChatMsg,null);
			  T2.setText("");
			  return msg;
		  }
		  
//	public void valueChanged(ListSelectionEvent evt)
//		{
//			TChater.setText((String)LUser.getSelectedValue());
//		}	
    public static void main(String[]arg)
    {
    	new ChatClient();
    }		
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美美女一区二区三区| 欧美午夜电影在线播放| 肉丝袜脚交视频一区二区| 亚洲乱码中文字幕综合| 亚洲乱码国产乱码精品精的特点| 亚洲天堂av老司机| 亚洲欧美电影一区二区| 亚洲六月丁香色婷婷综合久久| 亚洲天堂成人在线观看| 一区二区三区中文字幕在线观看| 伊人夜夜躁av伊人久久| 亚洲va韩国va欧美va| 日本在线不卡视频| 美女看a上一区| 国产乱妇无码大片在线观看| 国产成人啪免费观看软件| 不卡av免费在线观看| 色综合久久久久| 91麻豆精品国产自产在线观看一区| 欧美一区二区视频观看视频| 精品国产乱码久久久久久久 | 国产精品久久久久天堂| 国产精品久久久爽爽爽麻豆色哟哟| 最新久久zyz资源站| 亚洲国产精品久久艾草纯爱| 日韩中文字幕区一区有砖一区| 裸体在线国模精品偷拍| 粉嫩在线一区二区三区视频| 在线免费不卡视频| 国产精品毛片a∨一区二区三区| 亚洲黄色片在线观看| 免费的国产精品| 北岛玲一区二区三区四区| 欧美伦理电影网| 国产精品女人毛片| 日日摸夜夜添夜夜添精品视频| 国产尤物一区二区在线| 色一情一乱一乱一91av| 精品国产乱码久久| 亚洲免费伊人电影| 国产精品一区二区久久精品爱涩| 91在线播放网址| 精品电影一区二区三区| 一二三四区精品视频| 国产在线精品一区二区夜色| 色网综合在线观看| 久久精品综合网| 日韩av电影免费观看高清完整版在线观看| 国产精品一线二线三线精华| 欧美性受xxxx黑人xyx性爽| 久久久久久久国产精品影院| 亚洲福利视频一区| 成人av午夜影院| 精品久久人人做人人爰| 亚洲自拍另类综合| 成人高清视频在线观看| 欧美电影免费观看高清完整版在线| 亚洲欧美日韩中文播放| 成人亚洲一区二区一| 日韩美女一区二区三区四区| 五月天激情综合| 色狠狠一区二区| 亚洲男人电影天堂| 不卡一二三区首页| 久久精品夜色噜噜亚洲aⅴ| 麻豆成人在线观看| 日韩欧美一级在线播放| 日韩在线观看一区二区| 欧美日本一道本在线视频| 亚洲精品日韩一| 91麻豆国产福利在线观看| 亚洲欧洲三级电影| 91浏览器在线视频| 亚洲免费观看视频| 一本一道波多野结衣一区二区 | 国产精品视频第一区| 国内成人自拍视频| 精品粉嫩aⅴ一区二区三区四区| 美女脱光内衣内裤视频久久网站| 91精品国产综合久久久久| 天天色综合成人网| 精品免费一区二区三区| 精久久久久久久久久久| 久久久久亚洲蜜桃| av一区二区不卡| 亚洲免费伊人电影| 8x福利精品第一导航| 麻豆国产精品一区二区三区 | 国产成人精品免费在线| 国产欧美视频一区二区三区| 国产98色在线|日韩| 综合网在线视频| 欧美亚洲国产bt| 免费一级欧美片在线观看| 久久综合九色综合久久久精品综合| 国产伦精一区二区三区| 亚洲欧洲av在线| 欧美日韩精品三区| 国产一区激情在线| 亚洲精品免费在线播放| 日韩小视频在线观看专区| 国产精品一区二区三区四区| 亚洲视频一二区| 欧美一级黄色片| 成人黄色小视频在线观看| 亚洲尤物视频在线| 久久嫩草精品久久久精品一| 一本在线高清不卡dvd| 美腿丝袜亚洲综合| 亚洲码国产岛国毛片在线| 日韩丝袜美女视频| 色综合网站在线| 黑人巨大精品欧美一区| 尤物av一区二区| 精品国产欧美一区二区| 色系网站成人免费| 国产福利精品导航| 全国精品久久少妇| 中文字幕五月欧美| 精品精品国产高清a毛片牛牛| 99久久免费精品| 卡一卡二国产精品 | 成人性生交大片免费 | 日韩欧美国产系列| 色噜噜狠狠色综合欧洲selulu| 美女视频黄频大全不卡视频在线播放| 国产精品欧美综合在线| 日韩欧美视频一区| 欧美在线免费观看视频| 成人免费电影视频| 激情av综合网| 日韩综合小视频| 亚洲国产一区二区三区青草影视 | 成人毛片在线观看| 久久激情综合网| 视频一区二区欧美| 亚洲精品乱码久久久久久黑人| 久久久久亚洲综合| 久久在线免费观看| 日韩三级视频在线看| 91麻豆精品国产自产在线| 欧美系列在线观看| 91福利资源站| 色欧美乱欧美15图片| 白白色 亚洲乱淫| 不卡视频免费播放| 成人免费看视频| 成人av在线资源网站| 国产福利电影一区二区三区| 国产综合一区二区| 狠狠色狠狠色综合系列| 国产精品自拍毛片| 国产一区在线视频| 国产精华液一区二区三区| 国产综合色精品一区二区三区| 精品一区二区三区免费毛片爱| 麻豆精品一区二区av白丝在线| 热久久久久久久| 麻豆精品在线看| 国产麻豆视频一区| 成人黄色免费短视频| 99久久久精品免费观看国产蜜| 9l国产精品久久久久麻豆| 99视频有精品| 欧美三级韩国三级日本三斤| 欧美日韩一区二区三区在线看| 欧美老肥妇做.爰bbww| 欧美一级理论片| 久久久不卡网国产精品一区| 国产精品天美传媒沈樵| 亚洲女人****多毛耸耸8| 亚洲国产综合91精品麻豆| 日韩av电影免费观看高清完整版| 免费看欧美女人艹b| 国产成人h网站| 色老头久久综合| 欧美一级国产精品| 中文字幕欧美区| 亚洲成人中文在线| 国内一区二区视频| 99久久综合狠狠综合久久| 欧美性猛交xxxxxxxx| 欧美mv日韩mv亚洲| 亚洲女爱视频在线| 奇米精品一区二区三区四区| 国产在线视频精品一区| 99国产精品99久久久久久| 欧美日韩精品高清| 欧美激情在线一区二区| 亚洲国产日产av| 国产91综合网| 日韩一区二区三区在线观看| 中文字幕av一区二区三区免费看| 一区二区在线观看免费视频播放| 久久精品国内一区二区三区 | 一区二区三区日韩在线观看| 美女网站色91| 欧美性一级生活| 国产精品久久久久9999吃药| 日韩成人av影视|