>凡事网 导航

用java编写一种登录框:密码正确则显示登陆成功,错误三次显示登陆失败然后退出.点退出则退出!求高手帮忙! java 中如何做一个登录限制,在用户输入密码是错误三次的时...

2024-07-03m.fan-pin.com
用JAVA做一个登陆界面,输入三次密码,错就退出。要求程序简单易懂。太复杂的看不懂!~

import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;


public class Logon {

private JFrame f = new JFrame("Logon");
private JTextField username = new JTextField(10);
private JPasswordField password = new JPasswordField(10);
private JLabel user = new JLabel("User");
private JLabel pwd = new JLabel("Password");
private JButton logon = new JButton("Logon on");
private int count = 0;

public Logon(){
JPanel p = new JPanel();
p.setLayout(new GridLayout(2, 2));

p.add(user);
p.add(username);
p.add(pwd);
p.add(password);

f.add(p, BorderLayout.NORTH);
f.add(logon, BorderLayout.SOUTH);

logon.addMouseListener(new MouseListener(){

public void mouseClicked(MouseEvent e) {
if(count < 3){
if(username.getText().trim().equals("") || password.getText().trim().equals("")){
JOptionPane.showMessageDialog(null, "Password/Username is blank. Please input!");
return;
}
//假定用户为admin,密码为abc123
if(username.getText().equals("admin") && password.getText().equals("abc123")){
JOptionPane.showMessageDialog(null, "Logon on success");
}else{
username.setText("");
password.setText("");
JOptionPane.showMessageDialog(null, "Username/password incorrect. Please try again");
count++;
}

}else{
JOptionPane.showMessageDialog(null, "You have tried 3 times. Program exit!");
System.exit(0);
}

}

public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mousePressed(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {}
});

f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setVisible(true);
f.setBounds(200, 200, 400, 400);
f.pack();

}

public static void main(String[] args) {
new Logon();
}

}

都是在用户登陆时查询数据库表,一般user表中会有:是否禁用、最后一次登陆时间(到秒)、用户登陆错误次数。
用户登陆时查询该用户数据,进行判断,若是正确,则更新是否禁用为可用、最后登陆时间、错误次数为0.
若是登陆错误时,错误次数+1,若是错误次数=3,则更新是否禁用为禁用,并更新最后一次登陆时间。
若是登陆时该用户数据中是否禁用为禁用,则判断最后一次登陆时间与当前登陆时间相比较,半小时后可以登陆,重复上面流程。
大概是这样的思路,具体细节另说。

package com.win;
import com.lcq.*;
import com.lcq.data.DataOperator;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class Login extends JFrame implements ActionListener
{
//ALT +"/"
JLabel lbName=new JLabel("用户名");
JLabel lbPwd=new JLabel("密 码");

JTextField textName =new JTextField();
JPasswordField textPwd =new JPasswordField();
JButton btnOK=new JButton("确定");
JButton btnCancel =new JButton("取消");

public Login()
{

this.getContentPane().setBackground(Color.blue);
this.setTitle("登录窗体");
this.setSize(300, 200);
this.setResizable(false);
this.add(lbName);
lbName.setBounds(50,50,50,20);
btnOK.addActionListener(this); //注册监听器
btnCancel.addActionListener(this); //注册监听器
this.add(lbPwd);
lbPwd.setBounds(50, 70, 50, 20);
this.add(textName);
textName.setBounds(120, 50, 100, 20);
this.add(textPwd);
textPwd.setBounds(120, 70, 100, 20);
this.add(btnOK);
btnOK.setBounds(50, 100, 70, 20);
this.add(btnCancel);
btnCancel.setBounds(160, 100, 70, 20);
this.setLayout(null);
lbName.setForeground(Color.white);
lbPwd.setForeground(Color.white);
Dimension screenSize =
Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation (screenSize.width / 2 - (this.getWidth() / 2),
screenSize.height / 2 - (this.getHeight() / 2));

}

@Override
public void actionPerformed(ActionEvent arg0) //事件处理方法
{
if(arg0.getSource().equals(btnOK))
{
int i=0;
do
{
String name=textName.getText();
String Pawd=new String( textPwd.getPassword());
if(name.equals("aaa")&&Pawd.equals("aaa"))
{
//System.out.println("登录成功!");
JOptionPane.showConfirmDialog(null, "登录成功!","提示",JOptionPane.DEFAULT_OPTION);
}
else
{
//System.out.println("用户名或密码错误!");
JOptionPane.showConfirmDialog(null, "用户名或密码错误!","提示",JOptionPane.DEFAULT_OPTION);//对话框
i=i+1;
if(i>3)
{
JOptionPane.showConfirmDialog(null, "登录失败","提示",JOptionPane.DEFAULT_OPTION);
System.exit(0);
}
}
}while(true);

}
if(arg0.getSource().equals(btnCancel))
{
JOptionPane.showConfirmDialog(null, "你退出了系统!","提示",JOptionPane.DEFAULT_OPTION);
System.exit(0);
}
}
}

//这个是调用
package com.main;
import com.win.*;
public class Test {

/**
* @param args
*/
public static void main(String[] args)
{
Login lg=new Login();
lg.setVisible(true);

}

}

JAVA用frame实现图中2个窗口 怎么写啊?
图片看起来很模糊,隐约看到需要一个登录窗口,那就分享一下以前练习的登录窗口demo吧。先上效果图:登录界面 源码如下:AbsoluteLoginFrame.java public class AbsoluteLoginFrame extends JFrame { private static final int LOGIN_WIDTH = 600;private static final int LOGIN_HEIGHT = 400;private static...

1. 编写一个应用程序,有一个标题为“登录”的窗口,能实现用户名和密码的...
import javax.swing.border.TitledBorder;\/*编写一个应用程序,有一个标题为“登录”的窗口,能实现用户名和密码的输入。(1)如果用户名和密码输入正确,则单击“登录”按钮弹出“用户登录成功”的消息框;(假设用户名是admin,密码是123456)。(2)如果用户名和密码输入错误,则单击“登录”按钮弹出“...

java设计个登陆页面,要求点击登录按钮时,判断用户名和密码是不是都为...
JButton login = new JButton("登录");login.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { \/\/这里才是楼主要的关键代码,getText()是得到用户输入的文本内容,判断是否等于123 if(jtf2.getText().equals("123")&&jtf1.getText().equals("123")){ Syste...

用java编写一个学生管理系统平台登录模块怎么写啊?
");String inputPassword = scanner.nextLine();if (inputUsername.equals(username) && inputPassword.equals(password)) { System.out.println("登录成功!");break;} else { System.out.println("用户名或密码错误,请重新输入!");} } \/\/ 关闭Scanner对象 scanner.close();} } ...

求Java编的登录界面代码:登录后分别进入管理员界面及用户界面,依据是数 ...
import java.sql.Statement;import 操作处理.UsersCL;\/**@author 20111024 * 检测登录的用户在数据库中有无,若没有,则提示没有此用户, * 若有,则判断级别:普通用户还是管理员。 *\/public class UserCheck { private int i=0; \/\/用户级别:0不是用户、1是管理员、2是普通用户 UserCheck(String name ,...

Java编写用户登陆界面,密码正确显示登陆成功,错误显示登录失败,求完 ...
null, "登录成功"); } else { JOptionPane.showMessageDialog(null, "登录失败"); } } public static void main(String [] argv){ new Longin(); }}按你的要求写了一个java类,实现了你需要的功能~运行结果如下图:...

请编写一个用户登录界面,界面中必须要有文本控件(TextView)、编辑框...
package com.zhidao20190103;import java.awt.GridLayout;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.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField...

JAVA 中 GUI登录界面设计源代码?
import java.awt.Container;import java.awt.FlowLayout;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;public class Login { private JFrame frame = new JFrame("登录");...

...个登录框,可以输入用户名和密码,点击登录,用java怎么样实现_百度知 ...
private JTextField usernameInput;\/\/文本框 private JPasswordField pwdInput;\/\/密码框 private JLabel warning;\/\/提示文本 private List<User> users = new ArrayList<User>();\/\/ 创建用户集合 \/ 程序主方法 启动第一个界面 Launch the application param args \/ public static void main(String args[...

java登陆窗口
(#)TestFrame.java JFC Test application author version 1.00 2010\/5\/30 \/import java.awt.*;import java.awt.event.*;import javax.swing.*;public class TestFrame extends JFrame { \/ The constructor \/ public TestFrame() { JLabel lblUserName = new JLabel("用户名");final JTextField...

相关链接2

返回顶部
凡事房车自主流
凡事网