<b id="yt35u"></b>
  • <b id="yt35u"></b>

  • <tt id="yt35u"><form id="yt35u"></form></tt>
    <button id="yt35u"></button>

    <button id="yt35u"></button>

    <strike id="yt35u"><dfn id="yt35u"></dfn></strike>

    <i id="yt35u"></i>
    1. <tt id="yt35u"></tt>
      <b id="yt35u"><sub id="yt35u"><tr id="yt35u"></tr></sub></b>

      教育路上

      全國站>Java>Java基礎>java在線聊天室chart類的創建
      學員需求

      java在線聊天室chart類的創建

      摘要:java在線聊天室chart類的創建。以下是我們為大家整理的,相信大家閱讀完后肯定有了自己的選擇吧。

      2021-06-29 11:53網絡推薦

      發布時間:
      2021-06-29 11:53
      信息來源:
      網絡推薦
      瀏覽次數:
      2204
      java在線聊天室chart類的創建

      package aaa;
      import java.awt.*;
      import java.awt.event.*;
      import java.io.BufferedReader;
      import java.io.InputStreamReader;
      import java.io.PrintWriter;
      import java.net.InetAddress;
      import java.net.Socket;
      
      import javax.swing.*;
      
      public class chart extends JFrame  {
      	//定義全局變量或成員變量
      	private JButton send=new JButton("發送");
      	private JTextArea inputTextArea=new JTextArea(5,50);
      	private JTextArea showTextArea=new JTextArea(10,50);
      	private JComboBox userlist=new JComboBox();
      	private JPanel up=new JPanel();
      	private JPanel center=new JPanel();
      	private JPanel down=new JPanel();
      	private Socket client;
      	private InetAddress ips;
      	private int ports=8080;
      	private String user;
      	
      	chart(String user){
      		this.user=user;
      		gui();//圖形
      		listion();//第一次連接服務器
      		flashuser();//等服務器發信息給客戶
      		send();//發送聊天記錄
      	}
      	
      	//圖形界面
      	void gui(){
      		JFrame f=new JFrame("聊天室");
      		f.setSize(800,400);
      		f.setLocation(300,200);
      		f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      		f.setLayout(new BorderLayout());
      		f.add(up,BorderLayout.NORTH);
      		f.add(down,BorderLayout.SOUTH);
      		f.add(center,BorderLayout.CENTER);
      		up.add(new JScrollPane(showTextArea));
      		showTextArea.setEditable(false);
      		center.add(inputTextArea);
      		down.add(userlist);
      		down.add(send);
      		userlist.addItem("所有人");
      		f.setVisible(true);
      	}
      	
      	//連接服務器
      	void listion(){
      		try {
      			ips=InetAddress.getByName("127.0.0.1");
      			client=new Socket(ips,ports);
      			PrintWriter writer = new PrintWriter(client.getOutputStream());
      			String a=user+"@@"+"reg";
      			writer.println(a);  
      	        writer.flush(); 
      			
      		}catch(Exception e1) {
      				e1.printStackTrace();
      		}
      	}
      	
      	void flashuser(){	
      		new Thread() {	   
      			public void run() {
      				while(true) {	
      					System.out.println(client);
      					if(client!=null) {
      					    try {
      							BufferedReader r = new BufferedReader(new InputStreamReader(client.getInputStream())); 
      							String line=r.readLine();
      							String[] arr=line.split("@");
      							//null@aaaa@userlist
      							if(arr[arr.length-1].equals("userlist")) {
      								for(String user:arr) {
      									if(!user.equals("null")&&!user.equals("userlist")) {
      									userlist.addItem(user);	
      								    }
      								}
      							}else if(arr[arr.length-1].equals("群發聊天")) {
      									showTextArea.append(arr[0]+arr[1]+"\n");
      							}else {
      								    showTextArea.append(arr[0]+arr[1]+arr[2]+"\n");
      							}
      					   }catch(Exception e) {
      							e.printStackTrace();
      					   }
      	               }
      	           }
      			}
      	   }.start();
      	}
      	
      	void send() {
      		//發送聊天內容
      		send.addActionListener(new ActionListener() { 
      			public void actionPerformed(ActionEvent e) {
      				try {
      					PrintWriter writer = new PrintWriter(client.getOutputStream());
      					String a=user+"@"+inputTextArea.getText()+"@"+userlist.getSelectedItem();
      					writer.println(a);  
      					writer.flush(); 
      				} catch (Exception e1) {
      					e1.printStackTrace();
      				}
      			}
      		});
      	}
      
      	public static void main(String[] args) {
      		new chart("zhangsan");
      
      	}
      
      }
      

      上一篇:
      java彈窗JDialog對話框
      下一篇:
      java在線聊天室服務端Server類的創建
      標簽:
      網友評論
      發布評論

      訪客的評論 2024/07/10 12:42

      文中描述的是準確的嗎,如何報名!

      相關推薦
      我也來發表評價關閉
      我對該內容的評價:
      0
      評價500
      驗證碼: 看不清 換一張
      提交 (匿名發布,無須擔心別人知道您的身份)
      學校免費發布信息關閉
      我們審核后會盡快展示,如有圖片請發郵件到:edu63@foxmail.com

      姓      名:

      內      容:

      手機號碼:

      驗  證  碼:  換一張

      確認提交
      填寫需求信息關閉
      我們會根據您的需求匹配并審核留言

      姓      名:

      意向城市:

      留      言:

      手機號碼:

      驗  證  碼:  換一張

      確認提交
      完善補充本文信息關閉
      非常感謝您幫助完善補充本文信息


       換一張

      確認提交
      女班长给我看她的小内内

        <b id="yt35u"></b>
    1. <b id="yt35u"></b>

    2. <tt id="yt35u"><form id="yt35u"></form></tt>
      <button id="yt35u"></button>

      <button id="yt35u"></button>

      <strike id="yt35u"><dfn id="yt35u"></dfn></strike>

      <i id="yt35u"></i>
      1. <tt id="yt35u"></tt>
        <b id="yt35u"><sub id="yt35u"><tr id="yt35u"></tr></sub></b>