<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • java編寫即時聊天程序

    時間:2024-08-26 09:46:45 JAVA認證 我要投稿
    • 相關推薦

    java編寫即時聊天程序

      怎樣用java編寫一個即時聊天程序呢?下面yjbys小編就為大家分享最新的java即時聊天程序編寫方法,一起來看看吧!

      import java.awt.*;

      import java.awt.event.*;

      import java.net.*;

      /**

      * Sample application using Frame.

      *

      * @author

      * @version 1.00 07/06/13

      */

      public class Chatp2pFrame extends Frame {

      List dataList=new List(26);

      TextField Tfip=new TextField(18);

      TextField Tfdata=new TextField(19);

      Label Lip=new Label("輸入對方的IP地址:");

      Label Ldata=new Label("輸入聊天的內容:");

      DatagramSocket socket=null;

      /**

      * The constructor.

      */

      public Chatp2pFrame() {

      try

      {

      socket=new DatagramSocket(5000);

      }

      catch(Exception e)

      {

      e.printStackTrace();

      }

      Tfip.setSize(150,15);

      Tfdata.setSize(150,15);

      Tfip.setFocusable(true);

      Tfip.setForeground(Color.blue);

      Tfdata.setForeground(Color.red);

      dataList.setForeground(Color.black);

      this.add(dataList,"North");

      Panel p1=new Panel();

      Panel p2=new Panel();

      p1.setLayout(new BorderLayout());

      p2.setLayout(new BorderLayout());

      this.add(p1,"Center");

      this.add(p2,"South");

      p1.add(Lip,"West");

      p1.add(Ldata,"East");

      p2.add(Tfip,"West");

      p2.add(Tfdata,"East");

      new Thread(new Runnable()

      {

      public void run()

      {

      byte[] buf=new byte[1024];

      DatagramPacket packet=new DatagramPacket(buf,1024);

      while(true)

      {

      try

      {

      socket.receive(packet);

      dataList.add(new String(buf,0,packet.getLength())+" FROM "+packet.getAddress().getHostAddress()+":"+packet.getPort(),0);

      }

      catch(Exception e)

      {

      if(!socket.isClosed())

      {

      e.printStackTrace();

      }

      }

      }

      }

      }

      ).start();

      Tfdata.addActionListener(new ActionListener()

      {

      public void actionPerformed(ActionEvent e)

      {

      try

      {

      byte[] buf=new byte[1024];

      buf=Tfdata.getText().getBytes();

      DatagramPacket packet=new DatagramPacket(buf,buf.length,

      InetAddress.getByName(Tfip.getText()),5000);

      socket.send(packet);

      dataList.add(new String(buf,0,packet.getLength())+" TO "+packet.getAddress().getHostAddress()+":"+packet.getPort(),0);

      }

      catch(Exception x)

      {

      x.printStackTrace();

      }

      Tfdata.setText("");

      }

      }

      );

      MenuBar menuBar = new MenuBar();

      Menu menuFile = new Menu();

      MenuItem menuFileExit = new MenuItem();

      menuFile.setLabel("文件");

      menuFileExit.setLabel("退出");

      // Add action listener.for the menu button

      menuFileExit.addActionListener

      (

      new ActionListener() {

      public void actionPerformed(ActionEvent e) {

      Chatp2pFrame.this.windowClosed();

      }

      }

      );

      menuFile.add(menuFileExit);

      menuBar.add(menuFile);

      setTitle("我的聊天程序");

      setMenuBar(menuBar);

      setSize(new Dimension(310, 500));

      this.setResizable(false);

      // Add window listener.

      this.addWindowListener

      (

      new WindowAdapter() {

      public void windowClosing(WindowEvent e) {

      Chatp2pFrame.this.windowClosed();

      }

      }

      );

      }

      /**

      * Shutdown procedure when run as an application.

      */

      protected void windowClosed() {

      // TODO: Check if it is safe to close the application

      // Exit application.

      socket.close();

      System.exit(0);

      }

      public static void main(String[] args) {

      // Create application frame.

      Chatp2pFrame frame = new Chatp2pFrame();

      // Show frame

      frame.setVisible(true);

      }

      }

    【java編寫即時聊天程序】相關文章:

    Java怎么編寫走馬燈程序08-19

    Java怎么編寫Oracle存儲過程09-15

    如何編譯java程序09-28

    Java編寫計算器的的常見做法01-22

    Java程序開發與運行環境06-21

    實現鼠標畫圖的Java程序06-22

    如何使用Swing編寫全屏程序09-20

    sun認證java程序員須知Java日志框架09-11

    java程序中如何調用linux命令08-27

    初級java程序員面試要求01-22

    主站蜘蛛池模板: 久久99热国产这有精品| 91av国产精品| 91久久精品国产免费直播| 亚洲级αV无码毛片久久精品| 国产成人综合久久精品尤物| 久久精品亚洲日本波多野结衣 | 真实国产乱子伦精品视频| 国产成人精品亚洲精品| 国产成人精品亚洲日本在线| 久久精品国产亚洲av水果派| 亚州日韩精品专区久久久| 国产精品欧美久久久久天天影视| 精品四虎免费观看国产高清午夜| 精品少妇无码AV无码专区| 亚洲精品国产品国语在线| 亚洲精品乱码久久久久久蜜桃| 久久精品亚洲乱码伦伦中文| 国产精品美女久久久网AV| 刺激无码在线观看精品视频| 欧美激情精品久久久久| 久久国产精品久久久| 久久亚洲精品中文字幕三区| 精品综合久久久久久97超人| 国产短视频精品一区二区三区| 人妻少妇偷人精品无码| 色妞ww精品视频7777| 日韩精品无码AV成人观看| 亚洲Av永久无码精品三区在线| 亚洲国产精品va在线播放| 亚洲电影日韩精品| 宅男宅女精品国产AV天堂| 在线观看亚洲精品国产| 无码精品一区二区三区在线| 少妇人妻无码精品视频| 久久久久久亚洲精品成人| 精品人无码一区二区三区| 97久久精品国产精品青草| 欧美国产亚洲精品高清不卡| 成人国产精品一区二区视频| 国产精品无码v在线观看| 精品国产婷婷久久久|