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. Hibernate映射文件创建和删除触发器,存储过程等数据库对象

    创建表,触发器,和存储过程等数据库对象,这里一定要用create 在hibernate.cfg.xml文件中

  2. SLAM初探-SLAM for Dummies

    SLAM综述性特别是原理讲述比较浅显易懂的的资料比较少,相对比较知名的是<SLAM for Dummies>,但中文资料相对较少,这里就简单概述一下<SLAM for Dummies ...

  3. 【树莓派】 Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/c/chkconfig/chkconfig_11.4.54.60.1debian1_all.deb Could not resolve 'mirrordirector.raspbian.org'

    在安装chkconfig的过程中,遇到如下问题: haochuang@raspberrypi:~/webapp $ sudo apt-get install chkconfigReading pack ...

  4. md语法之行内代码和代码片

    md语法之行内代码和代码片 比如说要在行内写上一句或者半句代码(代码的意思就是某种脚本语言), 用撇号围起来就可以了. 比如: import pandas as pd 写代码片(单独的一块脚本语言)的 ...

  5. return 关键字的作用

    注意: 如果一个函数的返回值类型是具体的数据类型,那么该函数就必须要保证在任意情况下都保证有返回值.(除了返回值类型是void以外) return 关键字的作用: 1. 返回数据给函数的调用者. 2. ...

  6. Python_Day5_迭代器、装饰器、软件开发规范

    本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 1.列表生成式,迭代器&生成器 列表生成 >>> a = [i+1 ...

  7. eslintrc配置翻译

    { "env": { "browser": true, "node": true, "commonjs": true } ...

  8. VS2010+Qt+OpenCv(显示图像)

    Qt在界面显示窗口中起着越来越重要的作用,从而了解了下如何在Qt中显示一副图像. 该小程序主要注意一下几点: 1.工程属性中设置OpenCV的环境(包含目录和库目录,以及附加依赖项),设置Qt的环境( ...

  9. 采用MANIFEST.MF之jar报错ClassNotFoundException解法

    检查n多遍也试了n多次,证明下面是MANIFEST.MF文件正确写法: Manifest-Version: 1.0 Premain-Class: cn.yandz.monitor.SizeOfObje ...

  10. mac下安装nginx+php+mysql+xdebug

    一,安装homebrew 就像linux下面有yum一样,mac也有个homebrew,管理软件非常便捷. 官网:http://brew.sh/index_zh-cn.html 上面有句命令,复制下来 ...