java语言图形用户登录界面代码

作者:坏蛋好人 时间:2021-09-11 23:19:34 

本文实例为大家分享了java登录界面的具体实现代码,供大家参考,具体内容如下

1. Login.java


package wzb;

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.Panel;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.util.Random;

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

public class Login extends JFrame implements ActionListener {
String userName;
String password;
String captcha;
public static String randomcaptcha;

public JLabel logoLabel, userNameLabel, passwordLabel, captchaLabel;
public JTextField userNameInput, captchaInput;
public JPasswordField passwordInput;
public JButton login, logout,change;
public Panel panel;

public Login() {
 setTitle("µÇ¼½çÃæ");
 setSize(400, 300);
 setLocationRelativeTo(null);
 init();
 setVisible(true);
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 setResizable(false);
}

public void init() {
 setLayout(null);
 // logoLabel= new JLabel();
 // logoLabel.setIcon(new ImageIcon("E:\\eclipse\\student3\\welcome.gif"));
 logoLabel = new JLabel(new ImageIcon("welcome.gif"));
 logoLabel.setBounds(125, 10, 150, 70);
 add(logoLabel);

userNameLabel = new JLabel("̞:");
 userNameLabel.setBounds(90, 90, 60, 40);
 add(userNameLabel);
 userNameInput = new JTextField();
 userNameInput.setBounds(150, 100, 150, 20);
 add(userNameInput);

passwordLabel = new JLabel("ÃÜ¡¡Âë:");
 passwordLabel.setBounds(90, 120, 60, 40);
 add(passwordLabel);
 passwordInput = new JPasswordField();
 passwordInput.setBounds(150, 130, 150, 20);
 add(passwordInput);

captchaLabel = new JLabel("ÑéÖ¤Âë:");
 captchaLabel.setBounds(90, 150, 60, 40);
 add(captchaLabel);
 captchaInput = new JTextField();
 captchaInput.setBounds(150, 160, 70, 20);
 add(captchaInput);

panel = new PanelDemo();
 panel.setBounds(220, 160, 80, 20);
 add(panel);

change = new JButton("»»Ò»»»");
 change.setBounds(300, 160, 80, 20);
 change.setContentAreaFilled(false);
 change.setBorderPainted(false);
 add(change);

login = new JButton("µÇ¼£¨L£©", new ImageIcon("login.gif"));
 login.setBounds(70, 200, 120, 30);
 login.setMnemonic(KeyEvent.VK_L);
 add(login);
 logout = new JButton("Í˳ö£¨X£©", new ImageIcon("exit.gif"));
 logout.setBounds(210, 200, 120, 30);
 logout.setMnemonic(KeyEvent.VK_X);
 add(logout);

userNameInput.addActionListener(this);
 passwordInput.addActionListener(this);
 captchaInput.addActionListener(this);

login.addActionListener(this);
 logout.addActionListener(this);
 change.addActionListener(this);
}

public void actionPerformed(ActionEvent e) {

userName = userNameInput.getText();
 password = new String(passwordInput.getPassword());
 captcha = captchaInput.getText();

if (e.getSource() == change) {
  panel.repaint();
 }
 if (e.getSource() == login) {
  if ((userName.equals("w")) && (password.equals("w"))) {
   if (captcha.equals(randomcaptcha)) {
    JOptionPane.showMessageDialog(this, "»¶Ó­µÇ½!");
   } else {
    JOptionPane.showMessageDialog(this, "ÑéÖ¤Âë´íÎó!");
    panel.repaint();
   }
  } else {
   JOptionPane.showMessageDialog(this, "Óû§Ãû»òÃÜÂë´íÎó!");
  }
 }
 if (e.getSource() == logout) {
  JOptionPane.showMessageDialog(this, "»¶Ó­Ï´ÎÔÙÀ´£¡");
  //System.exit(0);
  dispose();
 }
}
public static void main(String[] args) {
 new Login();
}
}
class PanelDemo extends Panel {

public void paint(Graphics g) {
 int width = 80;
 int height = 20;
 g.setColor(Color.LIGHT_GRAY);
 g.fillRect(0, 0, width, height);
 g.setColor(Color.BLACK);
 g.drawRect(0, 0, width, height);
 Random rd = new Random();
 for (int i = 0; i < 100; i++) {
  int x = rd.nextInt(width) - 2;
  int y = rd.nextInt(height) - 2;
  g.setColor(Color.RED);
  g.drawOval(x, y, 2, 2);
 }
 g.setFont(new Font("&ordm;&Uacute;&Igrave;&aring;", Font.BOLD, 20));
 g.setColor(Color.BLUE);
 char[] c = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789".toCharArray();
 StringBuffer sb = new StringBuffer();
 for (int i = 0; i < 4; i++) {
  int index = rd.nextInt(c.length);
  sb.append(c[index] + " ");
 }
 g.drawString(sb.toString(), 0, 18);

String str = sb.toString().replaceAll(" ", "");
 Login.randomcaptcha = str;
}
}

2. 捕获.PNG   

java语言图形用户登录界面代码

标签:java,登录
0
投稿

猜你喜欢

  • 如何实现bean初始化摧毁方法的注入

    2023-07-22 05:14:31
  • C# WinForm 判断程序是否已经在运行,且只允许运行一个实例,附源码

    2021-11-06 14:10:07
  • SpringMVC 如何使用注解完成登录拦截

    2023-11-18 02:20:11
  • C#实现的24点游戏实例详解

    2023-03-01 16:38:51
  • SpringBoot3.0自定stater模块的操作流程(chatGPT提供的49种场景)

    2023-06-15 05:21:46
  • DecimalFormat多种用法详解

    2022-11-13 15:06:52
  • Java中的MapStruct用法详解

    2022-10-05 12:18:13
  • Android键盘输入语言设置默认打开myanmar缅甸语的步骤

    2021-07-01 17:15:44
  • Java可重入锁的实现原理与应用场景

    2023-03-27 20:21:54
  • Activiti7整合Springboot使用记录

    2022-11-11 06:17:24
  • 完美解决idea moudle没有蓝色的小方块的问题

    2021-05-28 16:09:03
  • java中Class.forName的作用浅谈

    2023-11-11 12:30:26
  • Java如何解决发送Post请求报Stream closed问题

    2021-12-12 04:20:10
  • idea导入工程时不能导入maven项目不能加入tomcatServer的原因

    2023-06-13 05:35:11
  • java判断各类型字符个数实例代码

    2022-01-22 16:39:15
  • Android日期选择器实现年月日三级联动

    2022-12-13 03:35:59
  • C#解决汉诺塔问题DEMO

    2023-03-25 19:11:25
  • springboot实现多文件上传功能

    2022-05-31 22:49:10
  • C#中子类调用父类的实现方法

    2023-08-17 09:09:52
  • java 获取当前路径下的所有xml文档的方法

    2021-08-08 13:54:29
  • asp之家 软件编程 m.aspxhome.com