java练手例子——一个简单的登录界面

制作一个简单的登录界面

login.java

package LogIn_screen;

import javax.swing.*;
import java.awt.*;

public class Login {
    private JTextField jtf_account;
    private JTextField jtf_password;
    public void showUI() {
        //窗体
        JFrame jf = new JFrame();
        //分辨率
        jf.setSize(425, 550);
        jf.setTitle("登录界面");
        //居中
        jf.setLocationRelativeTo(null);
        //退出进程
        jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //流式布局管理器
        jf.setLayout(new FlowLayout());

        //图片+标签(第一行)
        ImageIcon im = new ImageIcon("D:\\Desktop\\20230516\\Java_Learning\\src\\LonIn_screen1.jpg");
        JLabel jl = new JLabel(im);
        jf.add(jl);

        // 创建账号和输入框(第二行)
        JPanel jp_account = new JPanel(new FlowLayout());
        //账号输入提示
        JLabel user_a = new JLabel("账号:");
        jp_account.add(user_a);
        //账号输入框
        jtf_account = new JTextField();
        jtf_account.setPreferredSize(new Dimension(360, 30));
        jp_account.add(jtf_account);
        jf.add(jp_account);

        //创建密码输入框(第三行)
        JPanel jp_password = new JPanel(new FlowLayout());
        //密码输入提示
        JLabel user_p = new JLabel("密码:");
        jp_password.add(user_p);
        //密码输入框
        jtf_password = new JTextField();
        jtf_password.setPreferredSize(new Dimension(360, 30));
        jp_password.add(jtf_password);
        jf.add(jp_password);

        //登录按钮(第四行)
        JButton jbu_login = new JButton("登录");
        jf.add(jbu_login);

        //注册按钮(第五行)
        JButton jbu_register = new JButton("注册");
        jf.add(jbu_register);

        //设置可见
        jf.setVisible(true);

        //登录监听器
        ButtonListener listener = new ButtonListener(this);
        jbu_login.addActionListener(listener);

        ButtonListener_register listener_register = new ButtonListener_register();
        jbu_register.addActionListener(listener_register);

    }
    public JTextField getAccountField() {
        return jtf_account;
    }
    public JTextField getPasswordField() {
        return jtf_password;
    }
    public static void main (String[] args){
        Login lo =new Login();
        lo.showUI();
    }
}

ButtonListener_register.java

package LogIn_screen;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class ButtonListener_register implements ActionListener {
    private Login _login;

    public void actionPerformed(ActionEvent r) {
        System.out.println("点击按钮注册");
    }
}

ButtonListener.java

package LogIn_screen;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Objects;

public class ButtonListener implements ActionListener {
    private final Login login;
    public ButtonListener(Login login) {
        this.login = login;
    }
    //事件处理方法
    public void actionPerformed(ActionEvent e){
        System.out.println("点击按钮登录!");
        //检查账号密码
        JTextField passwordField = login.getPasswordField();
        JTextField accountField = login.getAccountField();
        String account = accountField.getText();
        String password = passwordField.getText();
        if (checkLogin(account, password)){
            System.out.println("登录成功!");
            //显示登录新的界面
            JFrame jf01 = new JFrame();
            jf01.setSize(425, 550);
            jf01.setTitle("登录成功");
            jf01.setLocationRelativeTo(null);
            jf01.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            jf01.setLayout(new FlowLayout());
            ImageIcon im01 = new ImageIcon("D:\\Desktop\\编程文件\\LogIn_screen\\1.jpg");
            JLabel jl01 = new JLabel(im01);
            jf01.add(jl01);
            JPanel jp_account01 = new JPanel(new FlowLayout());
            //账号输入提示
            JLabel user_a01 = new JLabel("登录成功");
            jp_account01.add(user_a01);
            jf01.add(jp_account01);
            jf01.setVisible(true);
        }else{
            System.out.println("账号或密码错误");
            accountField.setText("");
            passwordField.setText("");
        }
    }
    private boolean checkLogin(String account, String password) {
        return Objects.equals(account, "Rainbow") && Objects.equals(password, "123456");
    }
}

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钻石程序的金锄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值