千家信息网

Java如何实现简单GUI登录和注册界面

发表于:2024-09-30 作者:千家信息网编辑
千家信息网最后更新 2024年09月30日,本篇内容主要讲解"Java如何实现简单GUI登录和注册界面",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java如何实现简单GUI登录和注册界面"吧!先看
千家信息网最后更新 2024年09月30日Java如何实现简单GUI登录和注册界面

本篇内容主要讲解"Java如何实现简单GUI登录和注册界面",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java如何实现简单GUI登录和注册界面"吧!

先看效果图:

登陆界面:

注册界面:

实现代码如下:

一、登陆界面

package cn.bms.view;import java.awt.Color;import java.awt.Dimension;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.border.MatteBorder;import cn.bms.tools.GUITools;/* * 登录窗口 */@SuppressWarnings("serial")public class AdminLogin extends JFrame {    private JPanel contentPanel = new JPanel();    // Label标签存放背景图片    private JLabel label;    // 设置按钮组件    private JButton login = new JButton("登录"), register = new JButton("注册");    private JLabel jlb1 = new JLabel("用户名:"), jlb2 = new JLabel("密码:"), jlbtitle = new JLabel("登录界面");    // 设置文本框组件    private JTextField admin = new JTextField(), password = new JTextField();    public AdminLogin() {        this.init();        this.addListener();    }    private void init() {        this.setTitle("管理员登陆界面");        this.setSize(500, 350);        GUITools.center(this);        ImageIcon image1 = new ImageIcon("837878.jpg"); // 界面背景图片        JLabel backLabel = new JLabel();        backLabel.setIcon(image1);        label = new JLabel(image1);        label.setBounds(0, 0, 1000, 400);        // 在LayeredPane最底层上添加两个带图片的标签,并且label2在label上方        this.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));        // 将内容面板设置为透明,就能够看见添加在LayeredPane上的背景。        ((JPanel) this.getContentPane()).setOpaque(false);        /*         * 添加组件到contentPanel容器中 布局方式为自由布局。         */        contentPanel.setLayout(null);        add(admin);        add(password);        add(login);        add(register);        add(jlb1);        add(jlb2);        add(jlbtitle);        /*         * 组件绝对位置         */        jlb1.setBounds(50, 130, 90, 25);        jlb1.setForeground(Color.WHITE);        admin.setBounds(95, 130, 300, 25);        password.setBounds(95, 154, 300, 25);        jlb2.setBounds(50, 154, 90, 25);        jlb2.setForeground(Color.WHITE);        register.setBounds(95, 225, 90, 20);        login.setBounds(315, 225, 90, 20);        jlbtitle.setBounds(180, 45, 200, 50);        Font f = new Font("微软雅黑", Font.BOLD, 30);        jlbtitle.setFont(f);        jlbtitle.setForeground(Color.BLUE);        /*         * 组件透明化         */        admin.setOpaque(true);        password.setOpaque(true);        contentPanel.setOpaque(false);        getContentPane().add(contentPanel);        /*         * 组件边框颜色         */        textSet(admin);        textSet(password);    }    /*     * JTextField文本框设置方法.     */    private void textSet(JTextField field) {        field.setBackground(new Color(255, 255, 255));        field.setPreferredSize(new Dimension(150, 28));        MatteBorder border = new MatteBorder(0, 0, 2, 0, new Color(192, 192, 192));        field.setBorder(border);    }    /*     * 事件监听     */    private void addListener() {        login.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                forLogin(admin.getText(), password.getText());            }        });        register.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                forRegister();            }        });    }    // 登录方法    public void forLogin(String admin, String pwd) {    }    // 注册方法    public void forRegister() {    }}

二、注册界面:

package cn.bms.view;import java.awt.Color;import java.awt.Dimension;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JTextField;import javax.swing.border.MatteBorder;import cn.bms.controller.AdminLoginController;import cn.bms.tools.GUITools;/* * 注册窗口 */@SuppressWarnings("serial")public class AdminRegister extends JFrame {    private JPanel contentPanel = new JPanel();    // Label标签存放背景图片    private JLabel label;    // 设置按钮组件    private JButton ok = new JButton("确定注册"), back = new JButton("返回登录");    private JLabel jlb1 = new JLabel("用户名:"), jlb2 = new JLabel("密码:"), jlb3 = new JLabel("确认密码:"),            jlbtitle = new JLabel("注册界面");    // 设置文本框组件    private JTextField admin = new JTextField(), password1 = new JTextField(), password2 = new JTextField();    public AdminRegister() {        this.init();        this.addListener();    }    private void init() {        this.setTitle("管理员注册界面");        this.setSize(500, 350);        GUITools.center(this);        ImageIcon image1 = new ImageIcon("837878.jpg"); // 界面背景图片        JLabel backLabel = new JLabel();        backLabel.setIcon(image1);        label = new JLabel(image1);        label.setBounds(0, 0, 1000, 400);        // 在LayeredPane最底层上添加两个带图片的标签,并且label2在label上方        this.getLayeredPane().add(label, new Integer(Integer.MIN_VALUE));        // 将内容面板设置为透明,就能够看见添加在LayeredPane上的背景。        ((JPanel) this.getContentPane()).setOpaque(false);        /*         * 添加组件到contentPanel容器中 布局方式为自由布局。         */        contentPanel.setLayout(null);        add(admin);        add(password1);        add(password2);        add(ok);        add(back);        add(jlb1);        add(jlb2);        add(jlb3);        add(jlbtitle);        /*         * 组件绝对位置         */        jlb1.setBounds(40, 130, 90, 25);        jlb1.setForeground(Color.WHITE);        admin.setBounds(95, 130, 300, 25);        password1.setBounds(95, 154, 300, 25);        jlb2.setBounds(40, 154, 90, 25);        jlb2.setForeground(Color.WHITE);        password2.setBounds(95, 178, 300, 25);        jlb3.setBounds(40, 178, 90, 25);        jlb3.setForeground(Color.WHITE);        ok.setBounds(315, 225, 90, 20);        back.setBounds(95, 225, 90, 20);        jlbtitle.setBounds(180, 45, 200, 50);        Font f = new Font("微软雅黑", Font.BOLD, 30);        jlbtitle.setFont(f);        jlbtitle.setForeground(Color.BLUE);        /*         * 组件透明化         */        admin.setOpaque(true);        password1.setOpaque(true);        password2.setOpaque(true);        contentPanel.setOpaque(false);        getContentPane().add(contentPanel);        /*         * 组件边框颜色         */        textSet(admin);        textSet(password1);        textSet(password2);    }    /*     * JTextField文本框设置方法.     */    private void textSet(JTextField field) {        field.setBackground(new Color(255, 255, 255));        field.setPreferredSize(new Dimension(150, 28));        MatteBorder border = new MatteBorder(0, 0, 2, 0, new Color(192, 192, 192));        field.setBorder(border);    }    /*     * 事件监听     */    private void addListener() {        ok.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                setRegister(admin.getText(), password1.getText(), password2.getText());            }        });        back.addActionListener(new ActionListener() {            @Override            public void actionPerformed(ActionEvent e) {                new AdminLoginController().setVisible(true);            }        });    }    // 实现注册账户方法    public void setRegister(String admin, String pwd1, String pwd2) {    }}

到此,相信大家对"Java如何实现简单GUI登录和注册界面"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0