Heim > Java > javaLernprogramm > So implementieren Sie eine einfache GUI-Anmelde- und Registrierungsschnittstelle in Java

So implementieren Sie eine einfache GUI-Anmelde- und Registrierungsschnittstelle in Java

WBOY
Freigeben: 2023-04-22 08:13:06
nach vorne
1831 Leute haben es durchsucht

Schauen Sie sich zuerst die Renderings an:

login -Schnittstelle:

So implementieren Sie eine einfache GUI-Anmelde- und Registrierungsschnittstelle in Java

Registrierungsschnittstelle:

So implementieren Sie eine einfache GUI-Anmelde- und Registrierungsschnittstelle in Java

Die Implementierungscode ist wie folgt:

1. Anmeldinschnittstelle

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() {
    }
}
Nach dem Login kopieren

2. Registrierungsschnittstelle:

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) {
    }
}
Nach dem Login kopieren
e

Das obige ist der detaillierte Inhalt vonSo implementieren Sie eine einfache GUI-Anmelde- und Registrierungsschnittstelle in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage