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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? mainframe.java

?? 采用Java語言進(jìn)行網(wǎng)絡(luò)編程實(shí)現(xiàn)
?? JAVA
字號:
package multiclientnew;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.net.*;import java.io.*;import java.util.Vector;  //引入Vector類,用于存儲客戶信息import java.util.StringTokenizer;  //引入StringTokenizer類,用于信息分離/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2005</p> * <p>Company: </p> * @author not attributable * @version 1.0 */public class MainFrame extends JFrame {  Socket socket=null;  BufferedReader cin=null;  PrintStream cout=null;  String clientName="";  //用于存儲客戶登陸名稱  JPanel contentPane;  JLabel jLabel1 = new JLabel();  JLabel jLabel2 = new JLabel();  JLabel jLabel3 = new JLabel();  JTextField jTextField1 = new JTextField();  JTextField jTextField2 = new JTextField();  JTextField jTextField3 = new JTextField();  JTextField jTextField4 = new JTextField();  JLabel jLabel4 = new JLabel();  JButton jButton1 = new JButton();  JButton jButton2 = new JButton();  JButton jButton3 = new JButton();  JScrollPane jScrollPane1 = new JScrollPane();  JList jList1 = new JList();  JScrollPane jScrollPane2 = new JScrollPane();  JTextArea jTextArea1 = new JTextArea();  //Construct the frame  public MainFrame() {    enableEvents(AWTEvent.WINDOW_EVENT_MASK);    try {      jbInit();    }    catch(Exception e) {      e.printStackTrace();    }  }  //Component initialization  private void jbInit() throws Exception  {    contentPane = (JPanel) this.getContentPane();    jLabel1.setFont(new java.awt.Font("Dialog", 0, 14));    jLabel1.setText("服務(wù)器IP");    jLabel1.setBounds(new Rectangle(16, 20, 60, 23));    contentPane.setLayout(null);    this.setSize(new Dimension(618, 317));    this.setTitle("多用戶信息廣播系統(tǒng)-客戶端");    jLabel2.setBounds(new Rectangle(204, 20, 36, 23));    jLabel2.setText("端口");    jLabel2.setFont(new java.awt.Font("Dialog", 0, 14));    jLabel3.setBounds(new Rectangle(315, 20, 60, 23));    jLabel3.setText("客戶名稱");    jLabel3.setFont(new java.awt.Font("Dialog", 0, 14));    jTextField1.setFont(new java.awt.Font("Dialog", 0, 14));    jTextField1.setText("127.0.0.1");    jTextField1.setBounds(new Rectangle(77, 20, 120, 23));    jTextField2.setBounds(new Rectangle(240, 20, 63, 23));    jTextField2.setText("6544");    jTextField2.setFont(new java.awt.Font("Dialog", 0, 14));    jTextField3.setBounds(new Rectangle(382, 20, 104, 23));    jTextField3.setFont(new java.awt.Font("Dialog", 0, 14));    jTextField3.setText("");    jTextField4.setText("hello");    jTextField4.setFont(new java.awt.Font("Dialog", 0, 14));    jTextField4.setToolTipText("");    jTextField4.setBounds(new Rectangle(76, 61, 292, 23));    jLabel4.setBounds(new Rectangle(10, 61, 60, 23));    jLabel4.setText("聊天信息");    jLabel4.setFont(new java.awt.Font("Dialog", 0, 14));    jButton1.setBounds(new Rectangle(500, 20, 104, 28));    jButton1.setFont(new java.awt.Font("Dialog", 0, 14));    jButton1.setText("連接服務(wù)器");    jButton1.addActionListener(new MainFrame_jButton1_actionAdapter(this));    jButton2.setText("發(fā)送信息");    jButton2.addActionListener(new MainFrame_jButton2_actionAdapter(this));    jButton2.setFont(new java.awt.Font("Dialog", 0, 14));    jButton2.setBounds(new Rectangle(380, 61, 104, 28));    jButton3.setBounds(new Rectangle(501, 61, 104, 28));    jButton3.setFont(new java.awt.Font("Dialog", 0, 14));    jButton3.setText("斷開連接");    jButton3.addActionListener(new MainFrame_jButton3_actionAdapter(this));    jScrollPane1.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);    jScrollPane1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);    jScrollPane1.setBounds(new Rectangle(11, 101, 274, 188));    jScrollPane2.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);    jScrollPane2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);    jScrollPane2.setBounds(new Rectangle(312, 104, 291, 186));    contentPane.add(jTextField3, null);    contentPane.add(jLabel3, null);    contentPane.add(jTextField2, null);    contentPane.add(jLabel2, null);    contentPane.add(jTextField1, null);    contentPane.add(jLabel1, null);    contentPane.add(jButton1, null);    contentPane.add(jButton2, null);    contentPane.add(jButton3, null);    contentPane.add(jLabel4, null);    contentPane.add(jTextField4, null);    contentPane.add(jScrollPane1, null);    contentPane.add(jScrollPane2, null);    jScrollPane2.getViewport().add(jTextArea1, null);    jScrollPane1.getViewport().add(jList1, null);  }  //Overridden so we can exit when window is closed  protected void processWindowEvent(WindowEvent e) {    super.processWindowEvent(e);    if (e.getID() == WindowEvent.WINDOW_CLOSING) {      System.exit(0);    }  }  class ReadMessageThread extends Thread{        public void run(){                String line="";                while(true){                        try{                                line = cin.readLine();  //從端口讀入一條信息                        }catch (IOException e){                               jTextArea1.append("輸入輸出異常\n");                        }                       StringTokenizer st=new StringTokenizer(line,":");                       String keyword=st.nextToken();//存儲關(guān)鍵字,判斷消息類型                if (keyword.equalsIgnoreCase("QUIT")){ //服務(wù)器同意斷開信息                                try{                                        socket.close();                                        jTextArea1.append("接收到服務(wù)器同意斷開信息,套接字關(guān)閉\n");                                }catch (IOException e){                                       jTextArea1.append("套接字關(guān)閉異常\n");                                }                                this.stop();                        } else if (keyword.equalsIgnoreCase("PEOPLE")){   //客戶列表信息                                /*將客戶名稱分離到Vector中,然后將其顯示在下拉列表中*/                                Vector imessage=new Vector();                                while(st.hasMoreTokens())                                        imessage.addElement(st.nextToken());                                jList1.setListData(imessage);                        }else{  //接收的是來自服務(wù)器的廣播信息                                //將信息的余下內(nèi)容全部提取,并去掉首字符(冒號),并顯示                                String message=st.nextToken("\0");                                message=message.substring(1);                                jTextArea1.append(message+"\n");                        }                }        }}  void jButton1_actionPerformed(ActionEvent e) {    try {                //獲取服務(wù)器IP                InetAddress ip=InetAddress.getByName(jTextField1.getText());int port=Integer.parseInt(jTextField2.getText());  //獲取服務(wù)器端口              socket= new Socket(ip,port);  //與服務(wù)器連接              jTextArea1.append("系統(tǒng)提示:與服務(wù)器開始連接...... \n");    } catch (IOException e1) {   //捕捉可能產(chǎn)生的異常              jTextArea1.append("服務(wù)器端口打開出錯\n");    }    if (socket != null) {  //連接成功            jTextArea1.append("系統(tǒng)提示:與服務(wù)器連接成功...... \n");            clientName=jTextField3.getText().trim(); //獲得客戶連接的名稱              try {                      //創(chuàng)建輸入流                       cin=new BufferedReader(new InputStreamReader(socket.getInputStream()));                //創(chuàng)建輸出流                cout = new PrintStream(socket.getOutputStream());                        //構(gòu)建客戶向服務(wù)器發(fā)送連接請求的信息,并發(fā)送到服務(wù)器                        String str = "PEOPLE:"+clientName;                        cout.println(str);                        //創(chuàng)建讀服務(wù)器發(fā)送信息線程                         ReadMessageThread readThread=new ReadMessageThread();                         readThread.start();                }catch(IOException e3) {   //捕捉可能產(chǎn)生的異常                jTextArea1.append("輸入輸出異常\n");              }        }  }  void jButton2_actionPerformed(ActionEvent e) {    String str=jTextField4.getText();    str="MSG:"+clientName+":"+str;    cout.println(str);  }  void jButton3_actionPerformed(ActionEvent e) {    String str="QUIT";    cout.println(str);    jTextArea1.append("客戶請求斷開連接\n");  }}class MainFrame_jButton1_actionAdapter implements java.awt.event.ActionListener {  MainFrame adaptee;  MainFrame_jButton1_actionAdapter(MainFrame adaptee) {    this.adaptee = adaptee;  }  public void actionPerformed(ActionEvent e) {    adaptee.jButton1_actionPerformed(e);  }}class MainFrame_jButton2_actionAdapter implements java.awt.event.ActionListener {  MainFrame adaptee;  MainFrame_jButton2_actionAdapter(MainFrame adaptee) {    this.adaptee = adaptee;  }  public void actionPerformed(ActionEvent e) {    adaptee.jButton2_actionPerformed(e);  }}class MainFrame_jButton3_actionAdapter implements java.awt.event.ActionListener {  MainFrame adaptee;  MainFrame_jButton3_actionAdapter(MainFrame adaptee) {    this.adaptee = adaptee;  }  public void actionPerformed(ActionEvent e) {    adaptee.jButton3_actionPerformed(e);  }}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
视频一区视频二区在线观看| 成人av在线电影| 亚洲bt欧美bt精品| 一区二区三区在线免费观看| 国产精品萝li| 亚洲欧美综合色| 亚洲欧美一区二区在线观看| 国产精品国产自产拍在线| 国产女人aaa级久久久级| 国产女人18水真多18精品一级做| 久久久噜噜噜久噜久久综合| 久久亚洲综合色一区二区三区| 久久亚洲综合色| 国产清纯白嫩初高生在线观看91 | 国产精品美女久久久久aⅴ国产馆| 26uuu色噜噜精品一区| 久久夜色精品国产噜噜av| 精品国产区一区| 久久久久成人黄色影片| 国产亚洲婷婷免费| 最新热久久免费视频| 亚洲日本成人在线观看| 亚洲一区在线播放| 丝袜美腿一区二区三区| 极品少妇xxxx偷拍精品少妇| 国产精品123| 色丁香久综合在线久综合在线观看| 欧美中文字幕不卡| 日韩视频在线永久播放| 中文字幕欧美区| 亚洲免费视频成人| 日韩国产一二三区| 国产在线视视频有精品| 不卡一区中文字幕| 欧美色男人天堂| 精品国产一区二区三区不卡| 国产日产亚洲精品系列| 一区二区三区国产精华| 青青草一区二区三区| 国产91在线观看丝袜| 欧美性感一区二区三区| 日韩午夜在线观看视频| 国产精品国产三级国产普通话蜜臀| 亚洲蜜臀av乱码久久精品| 日本在线观看不卡视频| 国产一区二区精品在线观看| 9人人澡人人爽人人精品| 欧亚一区二区三区| 国产网站一区二区三区| 亚洲高清在线精品| 国产一区不卡在线| 欧美亚洲国产一区二区三区| 日韩午夜在线观看视频| 亚洲女人****多毛耸耸8| 日韩精品一二三区| 不卡的看片网站| 日韩一区二区三区视频在线观看| 日韩一区有码在线| 蜜臀久久99精品久久久久宅男| 成人app软件下载大全免费| 欧美一区二区三区在线观看视频 | 国产乱子伦视频一区二区三区| 色呦呦国产精品| 久久久精品免费网站| 三级在线观看一区二区| 成人h动漫精品一区二区| 日韩欧美视频在线| 亚洲图片一区二区| av不卡一区二区三区| 欧美大片在线观看一区| 亚洲激情图片小说视频| 国产精品99久久久久久宅男| 欧美二区在线观看| 国产精品久久久久一区二区三区| 美女网站在线免费欧美精品| 91官网在线观看| 中文字幕高清一区| 国内精品在线播放| 91精品国产手机| 亚洲国产成人高清精品| 96av麻豆蜜桃一区二区| 国产午夜精品久久久久久久| 免费看欧美女人艹b| 欧美日韩精品欧美日韩精品一综合 | 精品嫩草影院久久| 五月综合激情婷婷六月色窝| 一本一道久久a久久精品综合蜜臀| 久久噜噜亚洲综合| 美女www一区二区| 91麻豆精品91久久久久久清纯 | 久久99国内精品| 欧美乱妇20p| 一区二区成人在线观看| 色婷婷激情综合| 亚洲美女屁股眼交| 色综合久久久久综合体桃花网| 国产精品免费久久| fc2成人免费人成在线观看播放| 国产欧美一区视频| 国产.欧美.日韩| 国产欧美精品一区二区色综合| 国产精一品亚洲二区在线视频| 日韩美一区二区三区| 久久精品国产一区二区| 欧美妇女性影城| 日韩成人午夜精品| 欧美一区二区大片| 久久99精品国产麻豆婷婷 | 日本中文字幕一区二区视频| 欧美亚洲一区三区| 无码av中文一区二区三区桃花岛| 欧美午夜一区二区三区| 午夜av一区二区三区| 日韩一区二区电影网| 美国毛片一区二区三区| 日韩精品一区二区三区四区 | 国产精品99久久久久久有的能看| 欧美成人性战久久| 国精品**一区二区三区在线蜜桃| 久久久电影一区二区三区| 国产一区二区三区不卡在线观看| 久久久久99精品一区| 成人av资源在线观看| 亚洲精品乱码久久久久| 欧美久久一二区| 国内精品久久久久影院色| 欧美国产1区2区| 91蝌蚪porny成人天涯| 亚洲高清三级视频| 精品乱人伦小说| 国产成人精品午夜视频免费| 中文字幕制服丝袜一区二区三区 | 亚洲人吸女人奶水| 欧美日韩成人一区二区| 美女视频第一区二区三区免费观看网站| 2024国产精品视频| jvid福利写真一区二区三区| 亚洲综合久久久| 欧美videos中文字幕| av一区二区三区在线| 亚洲一区在线电影| 久久欧美一区二区| 色婷婷久久综合| 久久丁香综合五月国产三级网站| 欧美国产视频在线| 欧美日韩国产一区| 国产乱码精品一区二区三区忘忧草| 亚洲人成小说网站色在线| 欧美久久婷婷综合色| 成人做爰69片免费看网站| 午夜精品福利一区二区三区蜜桃| 久久综合国产精品| 欧美午夜理伦三级在线观看| 国产精品正在播放| 亚洲自拍偷拍麻豆| 国产日产欧美一区| 正在播放一区二区| 91麻豆成人久久精品二区三区| 久久精品72免费观看| 亚洲卡通欧美制服中文| 欧美成人在线直播| 欧美性大战久久| 成人黄色网址在线观看| 日韩国产欧美在线观看| 亚洲欧洲制服丝袜| 国产欧美日韩在线| 91精品国产入口| 色菇凉天天综合网| 丁香另类激情小说| 免费观看在线综合色| 亚洲综合视频网| 成人免费一区二区三区视频| 日韩精品专区在线影院观看 | 亚洲bt欧美bt精品| 亚洲色图欧美激情| 日本一区二区三级电影在线观看| 欧美日韩大陆在线| 色视频欧美一区二区三区| 国产成人午夜高潮毛片| 蜜臀久久久久久久| 亚洲chinese男男1069| 亚洲视频一区二区在线| 欧美激情综合五月色丁香小说| 555www色欧美视频| 欧美日韩日本视频| 在线观看中文字幕不卡| av中文字幕不卡| 不卡一区二区在线| 国产成人精品免费看| 麻豆精品一区二区综合av| 午夜一区二区三区视频| 亚洲视频一区二区在线| 国产精品久久久久久久浪潮网站 | 国产肉丝袜一区二区| 欧美精品一区二区三区蜜臀| 91精品黄色片免费大全| 欧美日韩不卡一区| 欧美无砖砖区免费| 欧美日韩国产首页| 在线精品亚洲一区二区不卡|