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制作一个模仿聊天群聊静态页面的主要内容,如果未能解决你的问题,请参考以下文章