java图形界面聊天室简版
来源:互联网 发布:中国万网域名查询 编辑:程序博客网 时间:2024/06/07 01:48
这是服务端:package server;import javax.swing.*;import java.awt.event.*;import java.io.*;import java.net.*;import java.util.Calendar;public class Server extends JFrame implements ActionListener{static JTextArea jta=null;JTextField jtf=null;JScrollPane jsp=null;JButton jb_send=null;JPanel jp=null;static Socket socket=null;static String text_message;public static void main(String[] args) throws IOException {ServerSocket server=null;new Server();try{server=new ServerSocket(8001);socket=server.accept();}catch(Exception e){System.out.println("不能监听:"+e);}while(true){BufferedReader br=new BufferedReader(new InputStreamReader(socket.getInputStream()));jta.append(br.readLine()+"\n");}}public Server(){jta=new JTextArea();jta.setEditable(false);jsp=new JScrollPane(jta);jtf=new JTextField(20);jp=new JPanel();jb_send=new JButton("发送");jb_send.addActionListener(this);jp.add(jtf);jp.add(jb_send);this.add(jsp,"Center");this.add(jp,"South");this.setTitle("服务端");this.setSize(300, 200);this.setLocation(318,186);this.setResizable(false);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}public void actionPerformed(ActionEvent e) {if(e.getSource()==jb_send){if(jtf.getText().equals("")){JOptionPane.showMessageDialog(null, "消息不能为空");}else{text_message=jtf.getText();jta.append("服务端: "+Calendar.getInstance().getTime().toLocaleString()+" "+text_message+"\n");PrintWriter pw;try {pw = new PrintWriter(socket.getOutputStream(),true);if(!text_message.equals("")){pw.println("服务端: "+Calendar.getInstance().getTime().toLocaleString()+" "+text_message);}} catch (IOException e1) {e1.printStackTrace();}jtf.setText("");}}}}这是客户端:package client;import java.io.*;import java.net.*;import java.util.*;import java.awt.event.*;import javax.swing.*;public class Client extends JFrame implements ActionListener{static JTextArea jta=null;JTextField jtf=null;JPanel jp=null;JButton jb_send=null;JScrollPane jsp=null;static String text_message;static Socket socket=null;public static void main(String[] args) throws IOException {new Client();socket=new Socket("127.0.0.1",8001);while(true){BufferedReader is=new BufferedReader(new InputStreamReader(socket.getInputStream()));jta.append(is.readLine()+"\n");}}public Client(){jta=new JTextArea();jta.setEditable(false);jtf=new JTextField(20);jb_send=new JButton("发送");jb_send.addActionListener(this);jp=new JPanel();jsp=new JScrollPane(jta);jp.add(jtf);jp.add(jb_send);this.add(jsp,"Center");this.add(jp,"South");this.setTitle("客户端");this.setSize(300, 200);this.setLocation(636,186);this.setResizable(false);this.setVisible(true);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}public void actionPerformed(ActionEvent e) {if(e.getSource()==jb_send){if(jtf.getText().equals("")){JOptionPane.showMessageDialog(null, "消息不能为空");}else{text_message=jtf.getText();try{PrintWriter pw=null;pw=new PrintWriter(Client.socket.getOutputStream(),true);if(!text_message.equals("")){pw.println("客户端: "+Calendar.getInstance().getTime().toLocaleString()+" "+text_message);}}catch(Exception e1){e1.printStackTrace();}jta.append("客户端: "+Calendar.getInstance().getTime().toLocaleString()+" "+text_message+"\n");jtf.setText("");}}}}
下面是效果图:
0 0
- java图形界面聊天室简版
- 06 java GUI 网络编程:图形界面聊天室
- JAVA版聊天室
- 简单聊天室(java版)
- java聊天室
- java 聊天室
- Java聊天室
- java 聊天室
- java 聊天室
- java聊天室
- Java聊天室
- Java 聊天室
- java 图形界面
- java图形界面
- java图形界面
- Java图形界面
- java 图形界面
- Java 图形界面
- 创建一个swift界面程序【二】
- 如何在Altium Designer 软件PCB编辑器里插入图片或者公司LOGO
- 知识要点
- Android类参考---Fragment(四)
- 第十五周项目一-工资项目1
- java图形界面聊天室简版
- Android类参考---Fragment(五)
- Android类参考---Fragment(六)
- .net无法访问服务器文件的解决
- Android类参考---Fragment(七)
- tips2
- 数据库考题
- Android类参考---Fragment(八)
- Android--模拟器错误