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

📄 chat.java~51~

📁 JAVA 编写的udp聊天室(最简单)
💻 JAVA~51~
字号:
package chat;

import java.net.*;
import java.awt.Frame;
import java.awt.HeadlessException;
import java.awt.*;
import java.awt.event.*;
import java.io.*;

public class Chat
    extends Frame {
  private List lst = new List(6);
  private Panel bottom = new Panel();
  private TextField ip = new TextField(15);
  private TextField msg = new TextField(20);
  DatagramSocket ds = null;
  public Chat() throws HeadlessException, UnknownHostException {
    this.add(lst, "Center");
    this.add(bottom, "South");
    bottom.setLayout(new BorderLayout());
    bottom.add(ip, "West");
    bottom.add(msg, "East");
    this.pack();
    this.show();

    try {
      ds = new DatagramSocket(3000);
    }
    catch (SocketException ex) {
      ex.printStackTrace();
    }

    new Thread(new Runnable() {
      public void run() {
        byte[] buf = new byte[1024];
        DatagramPacket dp = new DatagramPacket(buf, buf.length);
        while (true) {
          try {
            ds.receive(dp);
            lst.add(new String(buf, 0, buf.length) + "from:" +
                    dp.getAddress().getHostAddress() + ":" + dp.getPort(), 0);
          }
          catch (IOException ex) {
          }
        }
      }
    }).start();

    this.addWindowListener(new WindowAdapter() {
      public void windowClosing(WindowEvent e) {
        dispose();
        ds.close();
        System.exit(0);
      }
    });
    msg.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        byte[] temp = new byte[1024];
        temp = msg.getText().getBytes();
        try {
          DatagramPacket dp = new DatagramPacket(temp, temp.length,
                                                 InetAddress.getByName(
              ip.getText()), 3000);
          ds.send(dp);
          msg.setText("");
        }
        catch (Exception ee) {
          ee.printStackTrace();
        }
      }
    });
  }

  public static void main(String[] args) throws UnknownHostException,
      HeadlessException {
    Chat mychat = new Chat();
  }

}

⌨️ 快捷键说明

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