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

📄 systemthread.java

📁 这是我们课程设计的时候做的聊天程序
💻 JAVA
字号:
package server;

import java.awt.TextField;
import java.io.IOException;
import java.util.Date;
import java.util.Enumeration;
import java.util.Hashtable;

import share.Message;


public class SystemThread extends Thread
{

    private TextField tf;
    Hashtable userList ;
  
    public SystemThread(TextField tf, Hashtable userList)
    {
        super();
        // TODO Auto-generated constructor stub
        this.tf = tf;
        this.userList = userList;
    }

    public void run()
    {
        // TODO Auto-generated method stub
        super.run();
        while(true)
        {
            
            try
            {
                sendSystemMessage();
                sendUserList();
                SystemThread.sleep(1000);
            }
            catch (InterruptedException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
    }

    private void sendSystemMessage()
    {
        try
        {
           
            String systemMessage=tf.getText().trim();
            if(tf.getName().equals("send"))
            {
                Message message=new Message("server","client",new Date(),systemMessage);
               
                for (Enumeration e = userList.elements() ; e.hasMoreElements() ;) 
                {
                    ((User)e.nextElement()).getOos().writeObject(message);
                }
                
                tf.setName("nosend");
                
            }
        }
        catch (IOException e)
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }
    private void sendUserList() 
    {
        try
        {
            String[] user = new String[userList.size()];
            int i = 0;
            for (Enumeration e = userList.elements(); e.hasMoreElements(); i++)
            {
                User u = (User) e.nextElement();
                user[i] = u.getName() + "(" + u.getId() + ")";
            }
            for (Enumeration e = userList.elements() ; e.hasMoreElements() ;) 
            {
                ((User)e.nextElement()).getOos().writeObject(user);
            }
        }
        catch(IOException e)
        {
            e.printStackTrace();
        }
    }

}

⌨️ 快捷键说明

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