Java基础练习题12--Java-GUI制作一个模仿聊天群聊静态页面

Posted 小智RE0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java基础练习题12--Java-GUI制作一个模仿聊天群聊静态页面相关的知识,希望对你有一定的参考价值。


使用GUI设计模拟群聊页面.
仅为静态页面,无具体实现功能.


登录注册页面:

import javax.swing.*;
import java.awt.*;
//登录的UI界面
public class LoginUI extends JFrame {
    public static void main(String[] args) {
        //创建窗口对象;
        LoginUI cui=new LoginUI();
        //设置窗口为可见的,
        cui.setVisible(true);
        //调用设置窗口的方法;
        cui.setJFrame();
    }
    public void setJFrame(){
        //设置窗口的大小;
        this.setSize(500,1200);
        //设置窗口标题;
        this.setTitle("登录页面");
        //可设置窗口相对位置居中;
        this.setLocationRelativeTo(null);
        //设置用户不可以调整窗口大小;
        this.setResizable(false);
        //EXIT_ON_CLOSE;窗口关闭时,程序也自动关闭掉;
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
         //创建主面板;4行1列的网格布局;
        JPanel jPanel=new JPanel(new GridLayout(4,1));
        //主面板设置背景颜色;
        jPanel.setBackground(new Color(150, 235, 250));

        //创建副面板1;用流式布局//欢迎登录
        JPanel FujPanel1=new JPanel(new FlowLayout(FlowLayout.CENTER,0,120));
        FujPanel1.setBackground(new Color(150, 235, 250));
        //写入标签;
        JLabel Welabel=new JLabel("模拟聊天软件");
        Welabel.setFont(new Font("楷书",Font.BOLD,20));
        //将标签添加到副面板1上;
        FujPanel1.add(Welabel);

        //创建副面板2;用流式布局//账号
        JPanel FujPanel2=new JPanel(new FlowLayout(FlowLayout.CENTER,0,200));
        FujPanel2.setBackground(new Color(150, 235, 250));
        //写入登录标签
        JLabel Colabel=new JLabel("账号");
        Colabel.setFont(new Font("楷书",Font.BOLD,20));
        //将标签添加到副面板2上;
        FujPanel2.add(Colabel);
        //写入登录框;
        JTextField CoField=new JTextField(20);
        //登录框添加到副面板2;
        FujPanel2.add(CoField);

        //创建副面板3;用流式布局
        JPanel FujPanel3=new JPanel(new FlowLayout(FlowLayout.CENTER,0,0));
        FujPanel3.setBackground(new Color(150, 235, 250));
        //写入密码标签;
        JLabel Passlabel=new JLabel("密码");
        Passlabel.setFont(new Font("楷书",Font.BOLD,20));
        //将密码标签写在面板上;
        FujPanel3.add(Passlabel);
        //写入密码框
        JPasswordField passwordField=new JPasswordField(20);
        //将密码框写在面板3上;
        FujPanel3.add(passwordField);

        //创建副面板4;用流式布局
        JPanel FujPanel4=new JPanel(new FlowLayout(FlowLayout.CENTER,50,0));
        FujPanel4.setBackground(new Color(150, 235, 250));
        //创建两个按钮;
        JButton LObutton=new JButton("登录");
        JButton REbutton=new JButton("注册");
        //将两个按钮写到面板4上;
        FujPanel4.add(LObutton);
        FujPanel4.add(REbutton);

        //将副面板1,2,3,4,添加到主面板;
        jPanel.add(FujPanel1);
        jPanel.add(FujPanel2);
        jPanel.add(FujPanel3);
        jPanel.add(FujPanel4);
        //将主面板添加到窗口上;
        this.add(jPanel);
    }
}

效果:

在这里插入图片描述


群聊页面:

import javax.swing.*;
import java.awt.*;
//聊天界面实现;
public class TalkUI extends JFrame {
    public static void main(String[] args) {
        //创建窗口;
        TalkUI talkUI=new TalkUI();
        //调用窗口属性方法;
        talkUI.setFrame();
    }
    //设置窗口属性
    public void setFrame(){
        //设置窗口标题;
        this.setTitle("聊天");
        //设置窗口为可见;
        this.setVisible(true);
        //设置不可改变大小;
        this.setResizable(false);
        //设置窗口大小;
        this.setSize(800,600);
        //设置窗口位置;
        this.setLocation(1000,100);
        //设置窗口关闭后,程序终止;
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //创建主面板;用边框布局
        JPanel jPanel=new JPanel(new BorderLayout());

        //创建副面板1:只能看消息;
        JPanel MesJpanel=new JPanel();
        MesJpanel.setBackground(new Color(0x580F0014, true));
        //创建多行文本域;
        JTextArea MesText=new JTextArea(30,60);
        //文本域会自动换行;
        MesText.setLineWrap(true);
        //文本域只读;
        MesText.setEditable(false);
        //将多行文本域设置为可滚动的;
        JScrollPane jScrollPane=new JScrollPane(MesText);
        //将多行文本域滚动的放入副面板1;
        MesJpanel.add(jScrollPane);

        //创建副面板2;可写,发送消息;
        JPanel CharJpanel=new JPanel();
        CharJpanel.setBackground(new Color(0x0140000, true));
        //创建单行文本框;
        JTextField CharText=new JTextField(50);
        //单行文本框设置字体;
        CharText.setFont(new Font("楷书",Font.ITALIC,15));
        //单行文本框放在副面板2;
        CharJpanel.add(CharText);
        //创建发送按钮
        JButton SendButton=new JButton("发送");
        //将发送按钮放在副面板2上;
        CharJpanel.add(SendButton);

        //将副面板1放入主面板;北
        jPanel.add(MesJpanel,BorderLayout.NORTH);
        //将副面板2房屋主面板,
        jPanel.add(CharJpanel);
        //将主面板放入窗口;
        this.add(jPanel);
    }
}

效果:

在这里插入图片描述


以上是关于Java基础练习题12--Java-GUI制作一个模仿聊天群聊静态页面的主要内容,如果未能解决你的问题,请参考以下文章

01-CSS基础练习:JD首页的制作(顶部和底部)

Mac开发基础练习:制作一个状态栏(NSStatusBar)上的App

Python基础案例练习:制作学生信息管理系统

02-CSS基础练习:JD首页的制作(快捷导航部分)

No_16_0229 Java基础学习第八天

Java 基础练习题2