• 大小: 2.32MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-12
  • 语言: Java
  • 标签: java  语音  视频  

资源简介

实现了java 局域网内 语音视频 聊天的程序 基于jmf开发的 如果下载后该程序运行了 需要安装jfm 和配置jfm的环境变量 直接运行sounds包下的chatloginfame即可,handlens包下的程序为java的放大镜程序

资源截图

代码片段和文件信息

package applet;
import java.awt.BorderLayout;   
import java.awt.Button;   
import java.awt.Color;   
import java.awt.Label;   
import java.awt.TextArea;   
import java.awt.TextField;   
import java.awt.event.ActionEvent;   
import java.awt.event.ActionListener;   
import java.io.BufferedReader;   
import java.io.IOException;   
import java.io.InputStreamReader;   
import java.io.PrintStream;   
import java.net.InetAddress;   
import java.net.Socket;   
import java.util.StringTokenizer;   
  
import javax.swing.Jframe;   
import javax.swing.JOptionPane;   
import javax.swing.JPanel;   
  
/**  
 * 基于Socket网络聊天程序 客户端编码  
 * @author xx 2010-08-12  
 */  
public class ChatClient extends Jframe  implements ActionListenerRunnable{   
     
    TextField tfName = new TextField(15);//姓名输入文本域   
    Button btConnect = new Button(“连接“);//连接按钮   
    Button btDisconnect = new Button(“断开连接“);//断开连接按钮   
    TextArea tfChat = new TextArea(827);//显示聊天信息文本域   
    Button btSend = new Button(“发送“);   
    TextField tfMessage = new TextField(30);//聊天输入   
    java.awt.List list1  = new java.awt.List(9);//显示在线用户信息    
    Socket socket = null;//连接端口   
    PrintStream ps = null;//输出流   
    Listen listen = null;   
    //监听线程类   
    class Listen extends Thread {   
        BufferedReader reader;   
        PrintStream ps;   
        String cname;   
        Socket socket;   
        ChatClient chatClient;   
        public Listen(ChatClient clientString nameSocket socket) {   
            try {   
                this.chatClient = client;   
                 this.socket = socket;   
                 this.cname = name;   
                 reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));   
                 ps = new PrintStream(socket.getOutputStream());   
            } catch (IOException e) {   
                e.printStackTrace();   
            }   
        }   
        public void run() {   
            while (true) {   
                String line=null ;   
                try {   
                line = reader.readLine(); //读取数据流   
                System.out.println(“客户端:“+line);   
                   
            }catch (IOException ex) {   
                ex.printStackTrace();   
                ps.println(“quit“);; //断开连接   
                return;   
            }   
            StringTokenizer stinfo = new StringTokenizer(line“:“); //分解字符串   
            String keyword = stinfo.nextToken();   
            if (keyword.equals(“MSG“)) {   
                chatClient.tfChat.append(line+“\n“);   
            }   
            else if (keyword.equals(“newUser“)){   
                chatClient.list1.clear();   
                chatClient.list1.add(“users“ 0);   
                int i = 1;   
                while (stinfo.hasMoreTokens()) {   
                    chatClient.list1.add(stinfo.nextToken() i++);   
                }   
            }  

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        838  2010-08-12 09:17  chat\.classpath

     文件       1037  2010-08-11 14:23  chat\.project

     文件        454  2010-08-11 14:23  chat\.settings\.jsdtscope

     文件        404  2010-08-12 16:38  chat\.settings\CVS\Entries

     文件         16  2010-08-12 16:38  chat\.settings\CVS\Repository

     文件         37  2010-08-12 16:38  chat\.settings\CVS\Root

     文件        330  2010-08-11 14:23  chat\.settings\org.eclipse.jdt.core.prefs

     文件        414  2010-08-11 14:23  chat\.settings\org.eclipse.wst.common.component

     文件        320  2010-08-11 14:23  chat\.settings\org.eclipse.wst.common.project.facet.core.xml

     文件         49  2010-08-11 14:23  chat\.settings\org.eclipse.wst.jsdt.ui.superType.container

     文件          6  2010-08-11 14:23  chat\.settings\org.eclipse.wst.jsdt.ui.superType.name

     文件       2481  2010-08-19 12:59  chat\build\classes\applet\ChatClient$Listen.class

     文件       4433  2010-08-19 12:59  chat\build\classes\applet\ChatClient.class

     文件       2508  2010-08-19 12:59  chat\build\classes\applet\ChatServer$Client.class

     文件       1958  2010-08-19 12:59  chat\build\classes\applet\ChatServer.class

     文件        199  2010-08-12 13:51  chat\build\classes\applet\help.txt

     文件       1021  2010-08-20 08:17  chat\build\classes\applet\MyChatter$1.class

     文件        684  2010-08-20 08:17  chat\build\classes\applet\MyChatter$2.class

     文件        685  2010-08-20 08:17  chat\build\classes\applet\MyChatter$3.class

     文件        729  2010-08-20 08:17  chat\build\classes\applet\MyChatter$MyKeyAdapter.class

     文件        900  2010-08-20 08:17  chat\build\classes\applet\MyChatter$Server.class

     文件       6904  2010-08-20 08:17  chat\build\classes\applet\MyChatter.class

     文件       2511  2010-08-19 12:59  chat\build\classes\application\ChatClient$Listen.class

     文件       4463  2010-08-19 12:59  chat\build\classes\application\ChatClient.class

     文件       2808  2010-08-19 12:59  chat\build\classes\application\ChatServer$Client.class

     文件       3117  2010-08-19 12:59  chat\build\classes\application\ChatServer.class

     文件        114  2010-08-12 13:51  chat\build\classes\application\help.txt

     文件         20  2010-08-12 16:38  chat\build\classes\CVS\Repository

     文件         37  2010-08-12 16:38  chat\build\classes\CVS\Root

     文件        404  2010-08-19 12:59  chat\build\classes\handlens\ConfigData.class

............此处省略146个文件信息

评论

共有 条评论