用Java实现用户登录界面

基本步骤

1.创建一个窗体
2.给按钮加上监听
3.获取界面输入框中的值给监听
4.存储用户信息
5.实现登录注册逻辑

1.创建一个窗体

 public  void LE(){
        JFrame jf=new JFrame();
        jf.setTitle("用户登录界面");
        jf.setSize(700,500);
        jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        jf.setLayout(new FlowLayout());
        JLabel name=new JLabel("账号");
        JLabel pw=new JLabel("密码");
        Dimension dm=new Dimension(300,50);
        JTextField namein=new JTextField();
        namein.setPreferredSize(dm);
        JPasswordField pwin=new JPasswordField();
        pwin.setPreferredSize(dm);
        JButton btn1=new JButton("登录");
        JButton btn2=new JButton("注册");
        jf.add(name);
        jf.add(namein);
        jf.add(pw);
        jf.add(pwin);
        jf.add(btn1);
        jf.add(btn2);
        jf.setVisible(true);
    }

注意

1.在加上多个按钮,输入框,标签时要先设置布局

2.在添加密码的输入框时注意不是普通的输入框

3.设置输入框大小的方法

 Dimension dm=new Dimension(300,50);
        JTextField namein=new JTextField();
        namein.setPreferredSize(dm);

2.给按钮加上监听
1.方法重写

public class Btnlistener implements ActionListener {
     public void actionPerformed(ActionEvent e) {}
2.界面上添加监听
        Btnlistener listener=new Btnlistener();
        btn1.addActionListener(listener);
        btn2.addActionListener(listener);
3.添加一个程序入口
 public static void main(String[]args){
        ULE login=new ULE();
        login.LE();
    }
3.传值
1.在监听中定义属性

    TextField Fname;
    JPasswordField Fpw;
注意
要获取什么样的类型的数据就定义什么类型

2.将界面上的输入框内容传给监听
        listener.Fname=namein;
        listener.Fpw=pwin;
3.获取输入框内容
        String name=namein.getText();
        String pw=pwin.getText();
4.存储用户信息
1.想要存储用户的信息,就要先定义一个User类

public class User {
    String name;
    String pw;
 
    public User(String name, String pw) {
        this.name = name;
        this.pw = pw;
    }
}
2.为了存储User对象,我们使用Arraylist<User>来储存
它常用的四个特性方法为

get

add

remove

size()

 ArrayList<User> userlist =new ArrayList();
5.登录注册逻辑
                                 -找到有账号-比较密码-输出成功语句   

登录-遍历用户对象

                               -未找到账号-输出提示注册语句

                              -找到有账号-输出提示登录语句

注册-遍历用户对象

                            -未找到账号-添加该用户并输出注册成功语句

0.获取按钮上的内容
        String btn=e.getActionCommand();
        System.out.println("你点击了"+btn);
1.遍历用户
if(btn.equals("登录")) {
            //登录时需要遍历账号是否已经存在
            for (int i = 0; i < userlist.size(); i++) {
                //遍历取出用户对象
                User getuser = userlist.get(i);
2.比较密码
 if (getuser.name.equals(name)) {
                    //比较密码
                    if(getuser.pw.equals(pw)){
                        JOptionPane.showMessageDialog(null,"登录成功!");
                        return;
                    }}}
return
表示结束方法不再循环

3.登录时未遍历到用户
  JOptionPane.showMessageDialog(null,"请先注册");}
注册时遍历对象及比较输入框中内容几乎一致
 else if(btn.equals("注册")){
                    //注册时需要遍历账号是否已经存在
                    for (int t = 0; t< userlist.size(); t++) {
                        //遍历取出用户对象
                        User getuser= userlist.get(t);
 
                        if (getuser.name.equals(name)) {
                            //弹出一个弹窗
                            JOptionPane.showMessageDialog(null, "用户已经存在,请直接登录!");
                            //之后直接结束方法,后边不会再循环
                        return;}}
 
 
4.注册时未遍历到用户
              //将数据打包为一个对象存入list
                User user = new User(name, pw);
                userlist.add(user);
                JOptionPane.showMessageDialog(null, "恭喜!创建了一个新的用户!");
 
            }
        }}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值