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

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

?? chatappletthree.java

?? Java 的聊天室的代碼 比較簡單一點, 適合初學者學習 cs040098 xmu 吳博 廈門大學
?? JAVA
字號:
import java.net.*;
import java.io.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
//聊天室主類
public class chatappletthree extends Applet 
implements Runnable,ActionListener,ItemListener{
public static final int PORT=1234;//PORT為網絡套接字端口號
static String name,xingbie;//name,xingbie分別為聊天人的名字和性別
Socket socket;
int jilu,enter=0;
//jilu為新進入聊天室的人是否與已有聊天室人重名的狀態標志
//jilu為0表明無重名可以進入;為1表明有重名,應重新進入
//enter為0,未進入聊天室,發送信息按鈕不起作用;enter為1已經進入聊天室
DataInputStream in;//定義讀取服務器信息流 in
static DataOutputStream out;//定義寫入服務器信息流 out
Thread thread;
String line;//line為讀取來自服務器線路的信息
static Mywindow mywindow;
static Apanel a;static Bpanel b;static Cpanel c;
//Applet為驅動初始化畫出聊天室界面,建立與服務器連接
//Applet初始化
public void init(){
mywindow=new Mywindow();
setBackground(new Color(113,163,139));
setLayout(new BorderLayout());
a=new Apanel();b=new Bpanel();c=new Cpanel();
add("North",a);add("Center",b);add("South",c);
a.button1.addActionListener(this);
a.button2.addActionListener(this);
c.button.addActionListener(this);
c.button2.addActionListener(this);
c.button3.addActionListener(this);
a.box1.addItemListener(this);
a.box2.addItemListener(this);
a.box3.addItemListener(this);
b.b2.list.addActionListener(this);
add("East",new Label());
add("West",new Label());
jilu=0;
this.setForeground(Color.black);
c.msg_txt.setBackground(Color.white);
b.chat_txt.setBackground(new Color(200,185,200));
b.chat_txt.setFont(new Font("TimeRoman",Font.PLAIN,12));
}
//Applet小程序驅動
public void start(){
//與服務器建立連接
//默認本機運行服務器端程序,與本機IP建立連接
this.getCodeBase().getHost();
try{
socket=new Socket(this.getCodeBase().getHost(),PORT);
in=new DataInputStream(socket.getInputStream());
out=new DataOutputStream(socket.getOutputStream());
}
catch(IOException e){
this.showStatus(e.toString());
say("歡迎來這里!");System.exit(1);
}
say("歡迎來到我的聊天室");
if(thread==null)
{
 thread=new Thread(this);
thread.setPriority(Thread.MIN_PRIORITY);
thread.start();
}
}
//停止小程序運行
public void stop(){
try{
out.writeUTF("QUIT");
}
catch(IOException e){}
}
//結束Applet關閉網絡套接字連接,結束用戶線程
public void destroy(){
try{
socket.close();}
catch(IOException e){
this.showStatus(e.toString());}
if((thread==null)&&thread.isAlive())
{
thread.yield();
thread=null;
}
}
//-----------------------------------------------------------------------------------------
//定義線程運行操作的方法與服務器通信
public void run()
{ String line;     //通過line讀取服務器放入“線路”的信息
  try { while(true)
         {line=in.readUTF();
          //線路信息前端為PEOPLE表明有新人進入了聊天室
           if(line.startsWith("PEOPLE"))
           {  String listString=line;
              if(line.endsWith("*"))
              //去掉名字信息后面的*號
              {listString=line.substring(0,(line.length()-1));}
              b.b2.list.add(listString.substring(6));
              if(!line.endsWith("*"))    //判斷是否是來自讀取列表的請求
                    { b.chat_txt.append(line.substring(6)+"爬上了紅蜘蛛網->"+'\n');}
           }
           //線路信息前端為QUIT表明有人離開了聊天室 
           else if (line.startsWith("QUIT"))
           { //QUIT+PEOPLE為10個字符
              String str=line.substring(10);
              try
              {  for(int i=0,k=0;i<=120;i++)  //聊天室列表中最多存放120個
                  { String s=b.b2.list.getItem(i);  //list列表中存放聊天室人員列表
                    if(s.equals(str))  //判斷某人是離開聊天室的人
                     { k=i;b.b2.list.remove(k);  //list列表中清除此人
                       b.chat_txt.append(line.substring(10)+"<-高興地離開了網絡 "+'\n');
                     }//在聊天文本區顯示某人離開了聊天室
                  }
              }
              catch(ArrayIndexOutOfBoundsException e) {}
           }
           //線路前端為MSG表明接收到的是普通聊天話語信息
           else if(line.startsWith("MSG"))
           { b.chat_txt.append(line.substring(3)+'\n');}  //在聊天文本區顯示話語
           //線路信息前端為“悄悄地對”表明接收到悄悄話
           else if(line.startsWith("悄悄地對"))
           {
             b.chat_txt.append(line+'\n');  //文本區顯示悄悄話
           }
         }
      }
  catch(IOException e)
  { say("再見!歡迎再來紅蜘蛛聊天室,如果想重新進入本聊天室,單擊瀏覽器的刷新選項"); }
  catch(NullPointerException e) {}
}

//定義聊天室按鈕點擊事件的處理方法
public void actionPerformed(ActionEvent e)
{
   //點擊了進入聊天室按鈕Apanel中的a.button1
   if(e.getSource()==a.button1)
   {
     name=new String(a.name_txt.getText());
     try 
     { for(int i=0;i<=120;i++) //判斷是否與現有的聊天室人員重名
         { if((a.name_txt.getText()!=null)&&((a.name_txt.getText()+"["+xingbie+"]").equals(b.b2.list.getItem(i))||a.name_txt.getText().equals("該名字已被使用")))
            { jilu=1;name=null;break; }
         }
     }
     catch(ArrayIndexOutOfBoundsException e3) {}
     if(jilu==0)
       { try
            {  out.writeUTF("PEOPLE"+a.name_txt.getText()+"["+xingbie+"]");
               enter=1;
            }
         //向服務器寫入進入聊天室信息,enter標志置1,已進入聊天室
         catch(IOException e1){}
       }
      else if(jilu==1)
       {a.name_txt.setText("該名字已被使用");}
      jilu=0;
   }
   //點擊了離開聊天室按鈕Apanel中的a.button2
   else if(e.getSource()==a.button2)
   { try
           {// 離開聊天室,enter標志置0  
              out.writeUTF("QUIT");enter=0; 
           }
     catch(IOException e1) {}
     b.b2.list.removeAll();//清除聊天人員列表
   }
   //如果是點擊了聊天信息發送按鈕Cpanle中的c.button
   else if (e.getSource()==c.button&&enter==1)
   {  if(name!=null)
       { try
          { out.writeUTF("MSF"+name+"["+xingbie+"]"+"說->"+":"+c.msg_txt.getText());
            c.msg_txt.setText(null);//發送完畢信息清空寫信息文本框
          }
         catch(IOException e1) {}
       }
    }
   //雙擊了聊天人員列表中某人B2panel中的list彈出窗口發送悄悄話
   else if(e.getSource()==b.b2.list&&enter==1)
    {
       mywindow.setVisible(true);
       mywindow.text1.setText(((List)e.getSource()).getSelectedItem());
    }
   //雙擊了刷新談話區按鈕Cpanel中的c.button2
   else if(e.getSource()==c.button2)
     { b.chat_txt.setText(null); }//清空聊天文本區
   //點擊了刷新聊天列表區按鈕Cpanel中的c.button3
   else if(e.getSource()==c.button3)
    {  try
         {b.b2.list.removeAll();out.writeUTF("newlist");}//刷新聊天人員列表
       catch(IOException e1) {}
    }
}
//性別選擇框事件的處理
public void itemStateChanged(ItemEvent e1)
{
   if(e1.getItemSelectable()==a.box1)
       {xingbie=new String("男");}
   else if(e1.getItemSelectable()==a.box2)
       {xingbie=new String("女");}
   else if(e1.getItemSelectable()==a.box3)
       {xingbie=new String("蛋蛋");}
}
//各種事件系統消息顯示在文本區say方法
public void say(String msg)
{
   b.chat_txt.append("****"+msg+"****\n");
}
}
//-----------------------------------------------------------------------------------------

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美另类图片小说| 亚洲国产你懂的| 欧美三级一区二区| 国内精品不卡在线| 亚洲第一会所有码转帖| 日本一区二区三级电影在线观看| 欧美日韩国产高清一区二区| 成人午夜碰碰视频| 捆绑调教美女网站视频一区| 一区二区三区在线不卡| 国产精品乱码一区二区三区软件| 日韩午夜av一区| 欧美三日本三级三级在线播放| 成人免费电影视频| 国产综合色产在线精品| 日本成人在线网站| 亚洲午夜精品久久久久久久久| 国产精品美女久久久久aⅴ| 日韩欧美专区在线| 欧美欧美欧美欧美首页| 在线中文字幕不卡| 99视频精品全部免费在线| 国产一区二区在线免费观看| 性欧美大战久久久久久久久| 有码一区二区三区| 亚洲女同女同女同女同女同69| 欧美高清在线精品一区| 久久久国产精品午夜一区ai换脸| 日韩三级精品电影久久久 | 国产不卡高清在线观看视频| 日本成人在线看| 水蜜桃久久夜色精品一区的特点 | 精品国产亚洲在线| 日韩亚洲欧美成人一区| 51精品视频一区二区三区| 在线不卡a资源高清| 3d成人h动漫网站入口| 欧美日韩国产a| 91精品欧美综合在线观看最新| 欧美日韩精品免费观看视频| 欧美日韩免费电影| 欧美军同video69gay| 在线电影院国产精品| 欧美久久久久久久久| 777a∨成人精品桃花网| 欧美一二三在线| 精品国产sm最大网站| 国产午夜精品一区二区三区四区| 国产午夜亚洲精品不卡| 1000部国产精品成人观看| 亚洲精品老司机| 亚洲精品视频一区二区| 亚洲成人在线网站| 蜜桃传媒麻豆第一区在线观看| 国精产品一区一区三区mba桃花| 精品一区二区av| 成人性生交大片免费看中文| 91在线国产福利| 欧美日韩视频专区在线播放| 欧美一卡二卡在线| 久久精品一区二区三区四区| 国产精品美女久久久久久久久久久| 亚洲同性同志一二三专区| 一区二区三区国产精品| 日本系列欧美系列| 国产成人丝袜美腿| 欧洲av在线精品| 日韩欧美国产一区二区三区 | 色吧成人激情小说| 欧美卡1卡2卡| 久久男人中文字幕资源站| 亚洲图片激情小说| 日韩成人午夜电影| 高清不卡在线观看av| 日本精品视频一区二区三区| 欧美一区二区三区喷汁尤物| 久久久久久**毛片大全| 伊人夜夜躁av伊人久久| 另类成人小视频在线| 波多野结衣在线一区| 欧美老肥妇做.爰bbww视频| 久久伊人蜜桃av一区二区| 亚洲精品免费视频| 经典三级视频一区| 在线区一区二视频| 久久久一区二区| 亚洲18色成人| 不卡视频在线看| 日韩写真欧美这视频| 亚洲色图一区二区| 国产专区综合网| 欧美日韩日日摸| 欧美国产日韩a欧美在线观看| 亚洲国产精品视频| 成人免费视频app| 精品久久一区二区| 亚洲国产精品久久久男人的天堂| 国产精品1区二区.| 在线播放91灌醉迷j高跟美女| 国产精品久久看| 久草精品在线观看| 欧美日韩亚洲综合在线 | 欧美精品v国产精品v日韩精品 | 欧美午夜精品电影| 国产精品五月天| 另类成人小视频在线| 在线精品视频免费观看| 国产蜜臀av在线一区二区三区| 日韩精品电影在线观看| 色94色欧美sute亚洲线路二| 国产亚洲精品超碰| 日韩高清电影一区| 欧美性极品少妇| 国产精品的网站| 国产盗摄精品一区二区三区在线 | 欧美人伦禁忌dvd放荡欲情| 国产精品国产三级国产专播品爱网| 免费成人在线网站| 欧美日韩中文字幕一区| 亚洲美女在线一区| www.欧美日韩| 国产精品欧美久久久久无广告 | 成人精品一区二区三区四区 | 国产婷婷一区二区| 黄色小说综合网站| 日韩欧美国产不卡| 蓝色福利精品导航| 日韩天堂在线观看| 免费的成人av| 日韩视频免费观看高清完整版| 天天综合日日夜夜精品| 欧美无砖专区一中文字| 亚洲大尺度视频在线观看| 色综合久久综合中文综合网| 亚洲手机成人高清视频| 99精品欧美一区二区三区小说 | 中文字幕中文字幕一区| 成人性生交大片免费看在线播放| 国产三级精品在线| 国产精品亚洲一区二区三区在线 | 欧美日韩精品一区二区三区| 亚洲精品久久久久久国产精华液| 91免费观看国产| 亚洲男人天堂一区| 欧美性大战久久久久久久 | 亚洲综合男人的天堂| 色香蕉成人二区免费| 亚洲黄色免费网站| 欧美精品1区2区3区| 免费精品99久久国产综合精品| 欧美成人福利视频| 国产精品白丝jk白祙喷水网站 | 久久精品视频免费| 成人天堂资源www在线| 亚洲人成网站色在线观看| 欧美优质美女网站| 日韩电影免费在线看| 精品1区2区在线观看| 国产成人自拍网| 亚洲精品欧美专区| 欧美精品视频www在线观看| 久久国产综合精品| 中文字幕欧美激情一区| 在线观看国产日韩| 免费在线观看一区| 国产精品网友自拍| 欧美视频一区在线| 国产自产高清不卡| 综合分类小说区另类春色亚洲小说欧美| 91精彩视频在线观看| 免费国产亚洲视频| 日韩一区日韩二区| 欧美久久久久久久久中文字幕| 激情文学综合插| 一区二区视频免费在线观看| 日韩一区二区免费在线电影| 不卡欧美aaaaa| 日韩高清欧美激情| 亚洲天堂网中文字| 日韩午夜精品视频| 色婷婷国产精品久久包臀 | 欧洲一区在线观看| 久久国产剧场电影| 亚洲久草在线视频| 精品少妇一区二区三区在线播放 | 欧美变态口味重另类| 91麻豆国产福利精品| 美日韩黄色大片| 亚洲男同性视频| 久久久久久影视| 欧美日韩电影在线| 成人黄色在线看| 激情欧美一区二区| 亚洲国产精品久久久久秋霞影院| 久久久www成人免费无遮挡大片| 在线日韩av片| thepron国产精品| 狠狠色2019综合网| 视频一区中文字幕| 亚洲蜜桃精久久久久久久|