package javazuoye;
import javax.swing.*;

import java.awt.*;
import java.awt.event.*;
public class denglujiemian {

public static void main(String[] args) {
        // TODO Auto-generated method stub
        LoginDialog lo = new LoginDialog();
        lo.setVisible(true);
    }

}
public class MainWindow extends JFrame{

JLabel but1;
    MainWindow(){
       
        setTitle("系统登录");
        setBounds(400,200,300,180);
        setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
//        setLayout(null);

addWindowListener(new WindowAdapter(){
            public void windowClosing(WindowEvent e){
                System.exit(0);
            }
        });
        but1 = new JLabel("登录成功!");
        this.add(but1);
   
    }
   
   
}

public class LoginDialog extends JDialog {
    JLabel name;
    JLabel a2;
    JComboBox a3;
    JPasswordField password;
    JButton shi;
    JButton fou;
   
    LoginDialog(){
        method1();
    }

private void method1() {
        // TODO Auto-generated method stub
        setTitle("登录系统");
        setBounds(500,250,220,140);
        setDefaultCloseOperation(JDialog.DO_NOTHING_ON_CLOSE);
        setLayout(null);
        setModal(true);
//        this.setResizable(false);
       
        name = new JLabel("用户名:");
        name.setBounds(20,10,50,20);
        this.add(name);
        a2 = new JLabel("密码:");
        a2.setBounds(20,32,50,20);
        this.add(a2);
       
        a3 = new JComboBox();
        a3.addItem("huakaihualuo");
        a3.addItem("hellow");
        a3.setBounds(75,10,105,20);
        this.add(a3);
        password = new JPasswordField("666666");
        password.setBounds(75,33,105,20);
        password.setEchoChar('*');
        this.add(password);
       
        shi = new JButton("登录");
        shi.setBounds(25,60,60,20);
        add(shi);
        shi.addActionListener(new ActionListener(){

@Override
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub
                login();
            }           
        });
        fou =new JButton("退出");
        fou.setBounds(110,60,60,20);
        add(fou);
        fou.addActionListener(new ActionListener(){

@Override
            public void actionPerformed(ActionEvent e) {
                // TODO Auto-generated method stub
                logout();
            }   
        });
       
    }
    void login(){
        String accout = a3.getSelectedItem().toString();
        String pwd = new String(password.getPassword());
        if(accout.equals("huakaihualuo")&&pwd.equals("666666")){
            setVisible(false);
            showMainWindow();
        }else{
            JOptionPane.showMessageDialog(this, "用户名是"+accout + ",密码是" + pwd);
        }
    }
    void logout(){
        int ret = JOptionPane.showConfirmDialog(this,"退出登录?","取消登录",JOptionPane.YES_NO_OPTION);
        if(ret ==JOptionPane.YES_NO_OPTION){
            dispose();
        }
    }
    void showMainWindow(){
        MainWindow frm = new MainWindow();
        frm.setVisible(true);
    }
}

Java 第二次作业的更多相关文章

  1. JAVA第二次作业展示与学习心得

    JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...

  2. Java第二周作业

    Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...

  3. Java第二次作业參考代码

    Java第二次作业參考代码 [程序11] 题目:有1.2.3.4四个数字,能组成多少个互不同样且无反复数字的三位数?都是多少? public class lianxi11 { public stati ...

  4. Java第二次作业——数组和String类

    Java第二次作业--数组和String类 学习总结 1.学习使用Eclipse关联jdk源代码,查看String类的equals()方法,截图,并学习其实现方法.举例说明equals方法和==的区别 ...

  5. Java第二次作业程序设计作业

    本次作业包含两个部分:一是以下4个题目的程序源码和运行结果截图:二是本次作业的小结(谈谈你在做作业的过程中遇到了哪些问题,如何解决,有哪些收获). 1.编写"人"类及其测试类. 1 ...

  6. Java第二次作业--数组和String类

    Deadline: 2017-3-28 23:00 一.学习要点 认真看书并查阅相关资料,掌握以下内容: 掌握基本数据类型和引用数据类型的区别 理解对象的生成与引用的关系 掌握构造方法的重载 掌握St ...

  7. Java第二次作业第二题

    请编写图像界面程序,用户在第一文本行输入数字,有三个按钮,分别是计算2进制,8进制,16进制,点击其中一个按钮,第一个文本行中的数据转换为相应进制的数显示在第二个文本行中. package naizi ...

  8. 1903021116-吉琛- JAVA第二周作业—Java程序编写

    项目 内容 课程班级博客链接 19级信计班 这个作业要求链接 https://www.cnblogs.com/thelovelybugfly/p/9641367.html 我的课程学习目标 1. 学习 ...

  9. java第二次作业

    这次通过学习,我掌握了下拉菜单和单选按钮的使用下拉菜单构造方法:JComboBox() 创建具有默认数据模型的 JComboBox.JComboBox(ComboBoxModel aModel) 创建 ...

随机推荐

  1. Unity手撸2048小游戏——模块拆分

    最近惹女票生气了,想起撸个游戏来哄哄她,加之以前在小恩爱App上,玩过那情侣版的2048,加之她喜欢玩这类益智类的游戏,打算撸一个3D的情侣版2048.不过之前没怎么独立做过游戏,就从2D的开始吧. ...

  2. exel中合并一列相同的数据到一行

    Sub 按钮1_Click() Application.ScreenUpdating = False arr = Range("a1:c" & [a65536].End(x ...

  3. Javascript学习笔记:2种其他类型转换为数字Number类型的方式

    ①使用parseInt()/parseFloat()(在ECMAScript6中是Number.parseInt()/Number.parseFloat()) console.log(parseInt ...

  4. [转] HashMap的存取之美

    本文转自 http://www.nowamagic.net/librarys/veda/detail/1202 HashMap是一种十分常用的数据结构,作为一个应用开发人员,对其原理.实现的加深理解有 ...

  5. linux下添加环境变量

    我安装完 RedHat Linux 5 之后,在终端使用一些命令,如: ifcinfig 查看本机的IP,发现不能使用此命令,提示说“command not found”,这该怎么办呢 想想肯定是环境 ...

  6. linux中Makefile文件相关内容

    第一章.概述什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional(专业)的程序员,m ...

  7. 慕课网__css_ float

  8. Android Fragment 深度解析

    1.Fragment的产生与介绍 Android运行在各种各样的设备中,有小屏幕的手机,超大屏的平板甚至电视.针对屏幕尺寸的差距,很多情况下,都是先针对手机开发一套app,然后拷贝一份,修改布局以适应 ...

  9. js 判断 是否位数字

    isNaN(val) val为数字返回false 不为数字返回truedocument.write(isNaN(123)); document.write(isNaN(-1.23)); documen ...

  10. HTML5 十大新特性(三)——视频和音频

    一.视频(video) H5新加了video标签,用来播放视频,默认为一个300*150的inline-block. 二.音频(audio) H5新加了audio标签,用来播放音频,默认为一个300* ...