zoukankan      html  css  js  c++  java
  • JAVA第二周随笔

    本次的随笔为合理使用组合框等来制作图形界面,我做的是一个用户登录界面,在做之前,我先在脑海中构思了一个框架,随后在做的过程中又加了一些细节,从中我发现了有许多内容都是老师讲过的,但由于我课下未能及时复习,导致许多知识都十分陌生,同时,也发现了一个组件可以用多种代码方法来实现,丰富了我的知识。以下是我的作品,仍然存在一个问题,就是用户名无论输入什么,只要密码正确,都可以进入。通过网上查阅相关知识也未能解决。


    package denglu;

    import java.awt.Color;
    import java.awt.Component;
    import java.awt.Image;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import javax.swing.Icon;
    import javax.swing.ImageIcon;
    import javax.swing.JButton;
    import javax.swing.JComboBox;
    import javax.swing.JDialog;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JPasswordField;

    public class DL {
    public static void main(String[] args) {
    //创建界面
    final JFrame frm = new JFrame("用户登录系统");
    frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frm.setLayout(null);

    	//副窗口
    	final JDialog jd = new JDialog(frm, "登录成功");
    	jd.setBounds(500,250,300,150);
    	
    	//创建用户名和密码
    	JLabel label1 = new JLabel("用户名:");
    	label1.setBounds(50, 40, 120, 25);
    	JLabel label2 = new JLabel("密     码:");
    	label2.setBounds(50, 80, 120, 25);
    	frm.add(label1);
    	frm.add(label2);
    	//组合框
        JComboBox text = new JComboBox();
    	text.setBounds(120, 40, 150, 25);
    	text.addItem("陈旭东");
    	text.addItem("陈旭东1");
    	text.setEditable(true);//组合框可编辑
    	JPasswordField password = new JPasswordField("1");
    	password.setBounds(120, 80, 150, 25);	
    	frm.add(text);
    	frm.add(password);
    
    	//创建按钮
    	JButton yes = new JButton("确定");
    	yes.setBounds(90, 140, 90,30);
    	yes.setBackground(Color.PINK);
    	JButton out = new JButton("退出");
    	out.setBounds(190, 140, 90, 30);
    	out.setBackground(Color.orange);
    	frm.add(yes);
    	frm.add(out);
    	
    	String account = text.getSelectedItem().toString();
    	String  pwd = new String(password.getPassword());
    
    	//创建监听效果		
    	yes.addActionListener(new ActionListener() {
    		@Override
    		public void actionPerformed(ActionEvent arg0) {
    			// TODO Auto-generated method stub
    			if(account.equals("陈旭东")&&pwd.equals(password.getText()))	
    					{
    				
    				JOptionPane.showMessageDialog(null,"            "+"您的用户名:"+"      "+account+"
                "+"您的密    码:"+"      "+pwd,"登陆成功", JOptionPane.PLAIN_MESSAGE);	
    			}else{
    				JOptionPane.showMessageDialog(null, "错误", "提示", JOptionPane.ERROR_MESSAGE);
    			}
    		}	
    	});
    	
    	out.addActionListener(new ActionListener() {
    		@Override
    		public void actionPerformed(ActionEvent arg0) {
    			// TODO Auto-generated method stub
    			System.exit(0);
    		}
    	});
        
    	JLabel label = new JLabel();
    	label.setBounds(1,1,400,200);
    	Icon z1 = new ImageIcon("image/tt.jpg");
    	label.setIcon(z1);
    	frm.add(label);
    	
    	frm.setBounds(450,230,400,240);
    	frm.setVisible(true);
    
    	}
    

    }

  • 相关阅读:
    C++学习笔记十关联容器
    Ubuntu下使用GDB断点Go程序
    各种语言的数字转罗码方法的实现
    为什么 ++i和i++的效果是一样的,试了javascript ,c++ java
    罗马数字转换阿拉伯数字(Java版,考虑较为全面)
    C++学习笔记九顺序容器(二) ForFreeDom 博客园
    智立方 屁话真言108:能盛事者能成事_智立方的杨石头_新浪博客
    腾讯搜搜高管吴军离职的传闻与真相
    罗马数字_百度百科
    快速深入一门语言的几个问题 Shell909090 随笔杂记
  • 原文地址:https://www.cnblogs.com/cxdbk/p/5289827.html
Copyright © 2011-2022 走看看