(超详细教程)用Java制作出用户登录界面(上)

努力成为头发茂密的程序员 2024-07-02 16:35:02 阅读 80

一、创建一个新的空白文件夹(确保Java运行时的环境干净)

二、数据准备:导入数据素材

依次选择:文件-新建-项目-

三、数据导入

1.1选择你准备导入的数据库地址

1.2选择从现有项目导出

1.3点击创建

1.4刷新数据

然后就看到了这个并没有数据的界面,此时不要慌,因为我们还有一个步骤:打开你所建项目的文件夹的路径,将你想要导入的文件夹复制粘贴到这个路径下面,然后再回到咱们的Java里面,刷新一下,数据就出来了,如下图

1.5代码转换

二、设计登录界面

在Java界面,点开数据包中文件夹下的windows,点开它,根据代码注解,就可以运行和修改登录界面了,我把代码发在下面,需要的同学可自取

这样就成功了

如果还想进一步学习图书登录界面的跳转,可以跳转到下一个界面的那种,就可以看我的下一篇文章,里面或许可以给到大家解决的方法。

这是Login的代码,有需要的同学们自提~

package windows;

import java.awt.Rectangle;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPasswordField;

import javax.swing.JTextField;

import util.GlobalVar;

import data.UserDao;

import entity.User;

public class Login extends PublicJFrame {

/** 成员变量 */

private JTextField tf_user;// 定义用户名文本框

private JPasswordField pf_pass;// 定义密码框

private JButton bt_login;// 定义登录按钮

private JButton bt_close;// 定义关闭按钮

/** 构造方法:用于 初始化“登录界面” */

Login() {

// 第1步:获取框架内容面板,并设置内容面板的布局为绝对布局

this.getContentPane().setLayout(null);

// 第2步:在框架的内容面板上,创建、 设置各个组件

JLabel lb_user = new JLabel("用户名:");// 创建用户名标签

// 设置用户名标签的放置位置和放置大小

lb_user.setBounds(new Rectangle(100, 50, 70, 25));

add(lb_user);// 将用户名标签添加到内容面板上

tf_user = new JTextField();// 创建用户名文本框

tf_user.setBounds(new Rectangle(170, 50, 110, 25));

add(tf_user);

JLabel lb_pass = new JLabel("密码:");// 创建密码标签

lb_pass.setBounds(new Rectangle(100, 90, 50, 25));

add(lb_pass);

pf_pass = new JPasswordField();// 创建密码框

pf_pass.setBounds(new Rectangle(170, 90, 110, 25));

add(pf_pass);

bt_login = new JButton("登录");// 创建登录按钮

bt_login.setBounds(new Rectangle(100, 160, 80, 25));

// 第3步:为按钮添加单击事件监听器

// 为“登录”按钮添加单击事件监听器

bt_login.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

// 调用“登录”按钮事件响应方法

bt_login_actionPerformed();

}

});

add(bt_login);

bt_close = new JButton("关闭");// 创建关闭按钮

bt_close.setBounds(new Rectangle(200, 160, 80, 25));

// 为“关闭”按钮添加单击事件监听器

bt_close.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

// 释放“登录界面”占用的屏幕资源,即关闭“登录界面”

dispose();

}

});

add(bt_close);

// 第4步:设置“登录界面的标题、大小、位置等属性

setTitle("大帅哥-登录界面");// 设置“登录界面”标题

setSize(380, 260);// 设置“登录界面”大小

setResizable(false);// 设置“登录界面”大小不可改变

setLocationRelativeTo(null);// 设置“登录界面”放置在屏幕中央

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 设置“登录界面”默认的关闭操作

}

/** 成员方法1: "登录"按钮的事件响应方法 */

void bt_login_actionPerformed() {

// 第1步:获得用户名和密码

String name = tf_user.getText().trim();

String pass = new String(pf_pass.getPassword()).trim();

// 第2步:判断用户名或密码是否为空?

if (name.equals("") || pass.equals("")) {

// 为空,则显示对话框,给出提示信息,并返回

JOptionPane.showMessageDialog(this, "用户信息不允许为空!");

return;

}

// 第3步:调用方法,获取登录用户对象

User user = UserDao.getUser(name, pass);

// 第4步:判断登录用户对象是否存在?

if (user != null) {

// 第5步:存在,则保存当前登录用户对象,创建系统主界面,根据用户权限设置主界面,关闭登录界面

GlobalVar.login_user = user;// 保存当前登录用户对象

//System.out.println("进入系统主界面");

MainFrame main = new MainFrame();// 创建系统主界面

// 根据用户权限,设置需要显示的系统主界面内容

main.setPurView((byte) user.getIs_admin());//此方法在系统主界面中定义

this.dispose();// 释放“登录界面”占用的屏幕资源

} else {

// 第6步:不存在, 显示提示对话框,清空用户名和密码

JOptionPane.showMessageDialog(this, "用户名或密码错误!");

tf_user.setText("");// 清空用户名文本框

pf_pass.setText("");// 清空密码框

return;

}

}

/** 主方法:“图书管理系统”入口 */

public static void main(String args[]) {

new Login();// 创建登录界面

}

}



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。