Java聊天室 IO流 Socket流 GUI界面 客户端UserManageCompoent界面详解

Java聊天室 IO流 Socket流 GUI界面 客户端UserManageCompoent界面详解

效果图


  • 获取按钮点击 发送获取对象 界面显示在线列表

     getButton.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    User us = new User(MainView.ss,null,null, MsgTypeConfig.ONLINE_LIST,System.currentTimeMillis());
                    try {
                        send.writeObject(us);
                    } catch (IOException ioException) {
                        ioException.printStackTrace();
                    }
                    infortextArea1.setText("");
    
                }
            });
    

代码

package SanWa.UI;

import SanWa.Net.User;
import SanWa.Net.MsgTypeConfig;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class UserManageCompoent extends Box {
    public static JTextArea infortextArea1;
    public static ObjectOutputStream send= MainView.out;

    public UserManageCompoent() {

        //垂直布局
        super(BoxLayout.Y_AXIS);
        //组装视图

        Box u1Box = Box.createHorizontalBox();
        u1Box.setPreferredSize(new Dimension(850, 560));
        infortextArea1 = new JTextArea();
        infortextArea1.setEditable(false);
        infortextArea1.setBounds(0, 0, 850, 200);
     infortextArea1.setBackground(new Color(208,208,208));
        JScrollPane scrollPane21 = new JScrollPane();
        scrollPane21.setBounds(0, 0, 850, 300);
        scrollPane21.setViewportView(infortextArea1);
        u1Box.add(scrollPane21);


        JPanel btnPanel = new JPanel();
        Color color = new Color(208,208,208);
        btnPanel.setBackground(new Color(50,50,50));
        btnPanel.setMaximumSize(new Dimension(1500, 80));
        btnPanel.setLayout(new FlowLayout(FlowLayout.RIGHT));
        JLabel d11Label = new JLabel("  当前在线成员列表           ");
        d11Label.setBackground(new Color(50,50,50));
        d11Label.setForeground(Color.white);
        d11Label.setFont(new java.awt.Font("楷体", 1, 35));
        JButton getButton = new JButton("获取");
        getButton.setFont(new java.awt.Font("楷体", 1, 20));
        getButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                User us = new User(MainView.ss,null,null, MsgTypeConfig.ONLINE_LIST,System.currentTimeMillis());
                try {
                    send.writeObject(us);
                } catch (IOException ioException) {
                    ioException.printStackTrace();
                }
                infortextArea1.setText("");

            }
        });
        btnPanel.add(d11Label);
        btnPanel.add(getButton);
        this.add(btnPanel);

        Box u5Box = Box.createHorizontalBox(); u5Box.setBackground(new Color(208,208,208));
        JScrollPane scrollPane_5 = new JScrollPane();
        scrollPane_5.setBackground(new Color(208,208,208));
        Box btn1Panel = Box.createHorizontalBox();
        btn1Panel.setPreferredSize(new Dimension(600, 60));
        btn1Panel.setBackground(new Color(208,208,208));
        JLabel d1Label = new JLabel("【编号】    ");
        JLabel d2Label = new JLabel("【编号】    【姓名】    ");
        JLabel d3Label = new JLabel("【编号】    【姓名】    【IP 地 址】       ");
        JLabel d4Label = new JLabel("【编号】    【姓名】    【IP 地 址】       【端口号】   ");//组装视图
        JLabel d5Label = new JLabel("【编号】    【姓名】    【IP 地 址】       【端口号】   【本地端口号】    ");//组装视图
        JLabel d6Label = new JLabel("【编号】    【姓名】    【IP 地 址】       【端口号】   【本地端口号】    【在线状态】");//组装视图

        Color color1 = new Color(208,208,208);
        d1Label.setFont(new java.awt.Font("楷体", 1, 17));
        d2Label.setFont(new java.awt.Font("楷体", 1, 17));
        d3Label.setFont(new java.awt.Font("楷体", 1, 17));
        d4Label.setFont(new java.awt.Font("楷体", 1, 17));
        d5Label.setFont(new java.awt.Font("楷体", 1, 17));
        d6Label.setFont(new java.awt.Font("楷体", 1, 17));
        btn1Panel.setBackground(color1);
        btn1Panel.setMaximumSize(new Dimension(600, 40));
        btn1Panel.add(d1Label);
        btn1Panel.add(d2Label);
        btn1Panel.add(d3Label);
        btn1Panel.add(d4Label);
        btn1Panel.add(d5Label);
        btn1Panel.add(d6Label);
        JTextArea infortext = new JTextArea();
        infortext.setEditable(false);
        infortext.setText("【编号】  【姓名】   【IP地址】   【端口号】   【本地端口号】  【在线状态】");
        infortext.setFont(new java.awt.Font("楷体", 1, 20));
        infortext.setBackground(color);
        infortext.add(btn1Panel);
        scrollPane_5.setViewportView(infortext);
        u5Box.add(scrollPane_5);
        this.add(u5Box);
        this.add(u1Box);
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
图书资料管理信息系统,带源代码、数据库sql文件、课设报告,具备如下基本功能: 1、 系统管理功能有:角色管理、用户管理、修改密码。主要实现系统的安全管理,不同的操作者有不同的权限,可以执行不同的操作。普通读者的权限只能是查询图书及自己的借阅情况;而图书馆管理员可以对图书信息进行管理,如对新书入库,也可以管理用户,如添加新用户和删除不用的账号等。 2、 进书管理功能有:登记基本的图书信息。这部分的功能用于登记新书的书名、作者、出版社、价格、进书的册数、进书日期、ISBN等。 3、 图书入库管理功能有:对新书分类编目,及时更新图书库中的图书信息。这部分的功能用于对所购进的新书,按其种类学科进行编目,给与唯一的书号;及时更新书库中的图书信息,包括书名、书号、作者、出版社、价格、库存位置和库存册数这些信息,方便读者查询借阅。 4、 查询功能功能有:查询图书的信息,查询读者的借阅情况。这部分的功能主要提供多种方式的查询服务。读者可以根据书名、作者或关键字模糊查询图书信息;读者也可以根据自己的借书证号查询自己的借阅情况,如已借了几本书,借书日期,还书日期,有没有续借等。 5、 借书/还书管理功能有:借书管理、还书管理。这部分的功能是当读者借书时,系统根据借书证号识别读者身份,核对读者的借书信息,做出判断如可不可以借、还可借几本,成功借阅后记录在借书信息并修改书库图书信息。当读者还书时,系统根据借书证号识别读者身份,核对读者的借书信息,做出判断如有没有超期,要不要罚款,需要罚多少等,最后还书成功,修改书库图书信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值