package cn.com.view;

 import java.awt.Color;
import java.awt.Font;
import java.awt.SystemColor;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.MouseEvent; import javax.swing.ImageIcon;
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.JProgressBar;
import javax.swing.JTextField; import sun.awt.HorizBagLayout; import cn.com.beans.UserInfoBean;
import cn.com.beans.UserInfoViewBean;
import cn.com.daos.UserInfoDAO;
import cn.com.listeners.LoginFrame_btnLogin_ActionListener;
import cn.com.listeners.LoginFrame_btnReset_ActionListener;
import cn.com.listeners.LoginFrame_lblRegist_MouseListener; public class LoginFrame extends JFrame {
JPanel pnlMain;
JButton btnLogin;
JButton btnReset;
JLabel lblUserName;
JLabel lblUserPwd;
JLabel lblTitle;
JLabel lblRegist;
JTextField txtUserName;
JPasswordField pwdUserPwd;
JProgressBar progressBar;
JLabel lblLoginStat; public LoginFrame() {
pnlMain = new JPanel(null);
btnLogin = new JButton("登录");
btnReset = new JButton("重置");
lblUserName = new JLabel("用户名:");
lblUserPwd = new JLabel("密 码:");
lblTitle = new JLabel("用户登录");
lblRegist = new JLabel("注册");
txtUserName = new JTextField();
pwdUserPwd = new JPasswordField();
progressBar = new JProgressBar();
progressBar.setIndeterminate(false);
progressBar.setOrientation(JProgressBar.HORIZONTAL);
progressBar.setForeground(new Color(0, 255, 0));
progressBar.setBounds(286, 348, 146, 14);
init();
} private void init() {
// TODO Auto-generated method stub
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setIconImage(Toolkit.getDefaultToolkit().getImage("image\\e.jpg"));
this.setBounds(100, 100, 559, 351);
this.setLocationRelativeTo(null);
this.setResizable(false);
this.getContentPane().setLayout(null);
getContentPane().setBackground(new Color(255, 255, 255)); JLabel label = new JLabel("人事管理系统用户登录");
label.setFont(new Font("楷体", Font.PLAIN, 40));
label.setBackground(Color.WHITE);
label.setBounds(79, 10, 400, 43);
this.getContentPane().add(label); JLabel lblNewLabel = new JLabel("图片");
lblNewLabel.setBounds(10, 63, 250, 250);
this.getContentPane().add(lblNewLabel);
lblNewLabel.setIcon(new ImageIcon("D:\\Workspaces\\PMSys\\image\\login.jpg")); JLabel lblUserName = new JLabel("用户名:");
lblUserName.setFont(new Font("华文楷体", Font.BOLD, 15));
lblUserName.setBounds(270, 100, 65, 28);
this.getContentPane().add(lblUserName); JLabel lblUserPwd = new JLabel("密 码:");
lblUserPwd.setFont(new Font("华文楷体", Font.BOLD, 15));
lblUserPwd.setBounds(270, 163, 65, 25);
this.getContentPane().add(lblUserPwd); txtUserName = new JTextField();
txtUserName.setText("请输入用户名");
txtUserName.setBounds(345, 97, 173, 31);
txtUserName.setBackground(new Color(255, 255, 204));
this.getContentPane().add(txtUserName);
txtUserName.setColumns(10); pwdUserPwd = new JPasswordField();
pwdUserPwd.setFont(new Font("宋体", Font.BOLD, 20));
pwdUserPwd.setBounds(345, 160, 173, 28);
pwdUserPwd.setBackground(new Color(255, 255, 204));
this.getContentPane().add(pwdUserPwd); JButton btnLogin = new JButton("登录"); btnLogin.setBounds(272, 217, 93, 43);
this.getContentPane().add(btnLogin); JButton btnReset = new JButton("重置"); btnReset.setBounds(427, 217, 93, 43);
this.getContentPane().add(btnReset); lblLoginStat = new JLabel("登录中>>>>");
lblLoginStat.setForeground(Color.RED);
lblLoginStat.setFont(new Font("华文楷体", Font.BOLD, 15));
lblLoginStat.setBounds(270,270,246,14);
this.getContentPane().add(lblLoginStat);
lblLoginStat.setVisible(false); progressBar.setBounds(272,284,246,14);
progressBar.setIndeterminate(true);
progressBar.setVisible(false);
this.getContentPane().add(progressBar);
this.setVisible(true); //添加监听事件
btnLogin.addActionListener(new LoginFrame_btnLogin_ActionListener(this));
btnReset.addActionListener(new LoginFrame_btnReset_ActionListener(this));
lblRegist.addMouseListener(new LoginFrame_lblRegist_MouseListener(this));
} public void btnLogin_actionPerformed(ActionEvent e){
// TODO Auto-generated method stub progressBar.setVisible(true);
lblLoginStat.setVisible(true);
UserInfoDAO dao = new UserInfoDAO();
String userName = this.txtUserName.getText();
String userPwd = new String(this.pwdUserPwd.getPassword());
if(dao.validateByNameAndPwd(userName, userPwd)) {
UserInfoViewBean ab = dao.getUserListInfoByUserName(userName);
new MainFrame(ab);
this.dispose();
}else {
// JOptionPane.showMessageDialog(null, "用户名或密码错误","错误",JOptionPane.ERROR_MESSAGE);
int n = JOptionPane.showConfirmDialog(null, "密码错误,是否重新登录?", "提示",JOptionPane.YES_NO_OPTION);
if(n == 0){
//progressBar.setIndeterminate(false);
progressBar.setVisible(false);
lblLoginStat.setVisible(false);
}else{
System.exit(0);
} }
}
//重置监听事件
public void btnReset_actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
this.txtUserName.setText("");
this.pwdUserPwd.setText("");
} public void lblRegist_mouseClicked(MouseEvent e) {
} }

Java登录界面简单设计的更多相关文章

  1. Java消息系统简单设计与实现

    前言:由于导师在我的毕设项目里加了消息系统(本来想水水就过的..),没办法...来稍微研究研究吧..简单简单... 需求分析 我的毕设是一个博客系统,类似于简书这样的,所以消息系统也类似,在用户的消息 ...

  2. Java登录界面的实现(注册、登录、背景图片)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.java * 作者:常轩 * 微信公众号:Worldh ...

  3. java联系人管理系统简单设计

    本文实例为大家分享了java联系人管理系统毕业设计,供大家参考,具体内容如下 要求:  请使用XML保存数据,完成一个联系人管理系统.      用户必须经过认证登录后方可以使用系统.      注册 ...

  4. winform基本控件的使用2(用户登录界面的设计)

    首先还是通过例子来讲解,这次的实验主要是使用messageBox的使用方法,关于messageBox的使用方法在我的博客里面有相关的转载,请自己查看,下面说一下实验要求. 功能要求:模拟一个用户登陆的 ...

  5. 关于java登录界面

    import java.awt.*; 包含用于创建用户界面和绘制图形图像的所有类.   import javax.swing.*; 提供一组“轻量级”(全部是 Java 语言)组件,尽量让这些组件在所 ...

  6. Java图形界面开发—简易登录注册小程序

    登录注册小代码,将学过的一些小知识融合在一起进行了使用,加深印象.本例中如果有注释不详细的地方,详见其它博客. Java程序操作数据库SQLserver详解 功能介绍:简单的登录注册系统,使用了数据库 ...

  7. Qt常用的登录界面设计

    记录一下Qt常用的登录界面的设计 方便以后使用! 1.QpushButton改变一个按钮的颜色,当鼠标放上去和移开时显示不同的颜色.QPushButton { background-color: rg ...

  8. 以java实现的一个简单登录界面(带验证码)

    本文参考于:https://blog.csdn.net/wyf2017/article/details/78831744 https://blog.csdn.net/MengKun822/articl ...

  9. JAVA web简单的登录界面jsp实现

    此次试验所用到的软件是myeclipse10,tomcat7,Dreamweaver,sqlserver2008数据库.可以实现用户使用用户名和密码登录.如果登录成功,页面会显示登录成功,如果密码错误 ...

随机推荐

  1. C#程序集版本控制文件属性祥解

    using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices ...

  2. WebForm 登陆test

    <script> window.onload = function () { document.getElementById("form1").onsubmit = f ...

  3. Vuex教程简单实例

    什么是Vuex? vuex是一个专门为vue.js设计的集中式状态管理架构.状态?我把它理解为在data中的属性需要共享给其他vue组件使用的部分,就叫做状态.简单的说就是data中需要共用的属性. ...

  4. Testbench文件编写纪要(Verilog)

    之前在使用Verilog做FPGA项目中.以及其他一些不同的场合下,零散的写过一些练手性质的testbench文件,开始几次写的时候,每次都会因为一些基本的东西没记住.写的很不熟练,后面写的时候稍微熟 ...

  5. 洛谷 P1068 分数线划定【排序+模拟】

    世博会志愿者的选拔工作正在 A 市如火如荼的进行.为了选拔最合适的人才,AA市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试.面试分数线根 据计划录取人数的150\%150%划 ...

  6. SQLServer · BUG分析 · Agent 链接泄露分析(转载)

    背景 SQLServer Agent作为Windows服务提供给用户定期执行管理任务,这些任务被称为Job:考虑应用镜像的场景如何解决Job同步问题,AWS RDS的做法是不予理会,由用户维护Job, ...

  7. QT中的信号槽

    只有继承了QObject类的类,才具有信号槽的能力.所以,为了使用信号槽,必须继承QObject. 凡是QObject类(不管是直接子类还是间接子类),都应该在第一行代码写上Q_OBJECT. 不管是 ...

  8. 【[Offer收割]编程练习赛10 C】区间价值

    [题目链接]:http://hihocoder.com/problemset/problem/1483 [题意] 中文题 [题解] 二分最后的答案; 二分的时候; 对于每一个枚举的值x; 计算小于等于 ...

  9. EXTJS之DATA PROXY READER

    这是不依赖于STORE的读取.我测试了很久,原来在新版本的EXTJS里.modelmanager.getmodel之类的不用了. 更改为静态的LOAD办法. <!DOCTYPE html> ...

  10. 洛谷 P1948 [USACO08JAN]电话线Telephone Lines

    P1948 [USACO08JAN]电话线Telephone Lines 题目描述 Farmer John wants to set up a telephone line at his farm. ...