⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 loginframe.java

📁 java 版ATM 系统 注册登陆 存取!!!据对经典
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class LoginFrame extends JFrame implements ActionListener{
	
	MainFrame mainframe;
	Bank bank1;
	JPanel panel1 ,panel2;
	JLabel labelbj,labelbt,labeltext,AccountLabel,PasswordLabel1,PasswordLabel2,UserLabel,SexLabel,IDnumLabel,PhonenumLabel,AddressLabel,PostnumLabel;
	JTextField labeltextField,AccountField,PasswordField,UserField,IDnumField,PhonenumField,AddressField,PostnumField;
	Choice sexchoice;
	JPasswordField PasswordTextField1,PasswordTextField2;
	JButton YesBtn,returnBtn;
	
	public LoginFrame(MainFrame mainframe1,Bank b1)
	{
	    mainframe  = mainframe1;
	    bank1=b1;
	    GridBagLayout layout = new GridBagLayout();
       	setLayout(layout);
	    labeltext = new JLabel("          ");
	    labelbt = new JLabel("         ");
	    PasswordLabel1 = new JLabel("请输入您的密码:");
	    PasswordLabel2 = new JLabel("请确认您的密码:");
	    UserLabel = new JLabel("请输入您的姓名:");
	    SexLabel = new JLabel("请输入您的性别:");
	    IDnumLabel = new JLabel("请输入身份证号:");
	    PhonenumLabel = new JLabel("请输入手机号码:");
	    AddressLabel = new JLabel("请输入联系地址:");
	    PostnumLabel = new JLabel("请输入邮编号码:");
	    labelbj  = new JLabel(); 
		ImageIcon img = new ImageIcon( "bj02.jpg "); 
		labelbj .setIcon(img); 
		getLayeredPane().add(labelbj, new Integer(Integer.MIN_VALUE));
		labelbj.setBounds(0,0,img.getIconWidth(), img.getIconHeight());
		((JPanel)getContentPane()).setOpaque(false); 
	    
	    
	    PasswordTextField1 = new JPasswordField(10);	
	    PasswordTextField2 = new JPasswordField(10);	
	    UserField  = new JTextField(10);
	    sexchoice = new Choice();
	    sexchoice.addItem("            男            ");
	    sexchoice.addItem("            女            ");
	    IDnumField = new JTextField(10);	
	    PhonenumField = new JTextField(10);	
	    AddressField = new JTextField(10);	
	    PostnumField = new JTextField(10);	
        
        YesBtn = new JButton(" 注册 ");
		returnBtn = new JButton(" 返回上一层 ");
		  
		YesBtn.addActionListener(this);
		returnBtn.addActionListener(this);


	  // 设置布局都是在这里实现的。。。。
          add(labeltext, new GBC(0, 1).setWeight(100, 100).setInsets(2));   
   	      add(labelbt , new GBC(1, 1).setWeight(100, 100).setInsets(2)); 
	      add(PasswordLabel1, new GBC(0, 2).setAnchor(GBC.CENTER));
	      add(PasswordLabel2, new GBC(0, 3).setAnchor(GBC.CENTER));
	      add(UserLabel, new GBC(0, 4).setAnchor(GBC.CENTER));
	      add(SexLabel, new GBC(0,5).setAnchor(GBC.CENTER));
	      add(IDnumLabel, new GBC(0, 6).setAnchor(GBC.CENTER));
	      add(PhonenumLabel, new GBC(0, 7).setAnchor(GBC.CENTER));
	      add(AddressLabel, new GBC(0, 8).setAnchor(GBC.CENTER));
	      add(PostnumLabel, new GBC(0, 9).setAnchor(GBC.CENTER));
          add(YesBtn, new GBC(0, 10).setWeight(100, 100)); 
          add(returnBtn, new GBC(1, 10).setWeight(100, 100)); 
	      
          add(UserField, new GBC(1, 4).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); 
          add(sexchoice, new GBC(1, 5).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); 
          add(IDnumField, new GBC(1, 6).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); 
          add(PhonenumField, new GBC(1, 7).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); 
          add(AddressField, new GBC(1, 8).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); 
          add(PostnumField, new GBC(1, 9).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); 
          add(PasswordTextField1, new GBC(1, 2).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST)); // 把UserTextField 放在1列2行, 外部增加20px空间
          add(PasswordTextField2, new GBC(1, 3).setWeight(100, 0).setInsets(5).setAnchor(GBC.WEST));
            //把returnBtn  放到0列4行,如果水平,垂直方向有多余空间的话。按比例给YesBtn 加空间
        
         setSize(500,480);
		 setLocation(50,50);
		
		// 设置这个窗体关闭按钮的操作. 这里是设置为弹出对话框,并关闭整个系统!
		 this.addWindowListener(new WindowAdapter()
			{
			 public void windowClosing(WindowEvent e)
				{
					JOptionPane.showMessageDialog(null," 关闭整个系统!");
					System.exit(0);
				}
			}
		 );

	}

	public void actionPerformed(ActionEvent e)
	{
		// TODO 自动生成方法存根
		if(e.getSource()== YesBtn)
		{
			   validateDate();
		}

		else if(e.getSource()== returnBtn)
		{
			this.dispose();
		    mainframe.setVisible(true);
		}
	}
	   
	private void validateDate() 
	{
		String name;
		String sex;
		long idnum;
		long phonenum;
		String homead;
		long postcode;
		try
		{
			   String pwd1 = new String(PasswordTextField1.getPassword());
			   String password=pwd1;
			   String pwd2 = new String(PasswordTextField2.getPassword());
			   name =  UserField.getText();
			   sex = sexchoice.getSelectedItem();
			   idnum =Long.parseLong(IDnumField.getText());
			   phonenum =Long.parseLong(PhonenumField.getText());
			   homead = AddressField.getText();
			   postcode = Long.parseLong(PostnumField.getText());
			   
			   if(!compareTwoPassword())
			   {
                  JOptionPane.showMessageDialog(this,"两次密码输入不一致");
                  PasswordTextField2.setText("");
                  PasswordTextField1.setText("");
               }
			   else if(IDnumField.getText().length()!=18)
			   {
                     JOptionPane.showMessageDialog(this,"您的身份证号必须为18位数字");
                     IDnumField.setText("");
			   }

			   else
			   {
                String str = "  注册成功!!!";
			    JOptionPane.showMessageDialog(null,str);
			    Account a1 = new Account(password);
			    Userinfo u1 = new Userinfo(name, sex,idnum, phonenum, homead, postcode);	
			    bank1.registration(a1, u1);
			   
			   mainframe.setVisible(true);
			   this.setVisible(false);
			   }
		}
		catch(Exception ex)
		{
			JOptionPane.showMessageDialog(null," 请填写完整您的个人信息!");
		}
	}
	private boolean compareTwoPassword()                                                       //两次输入密码核对方法

    {

          boolean b = false;

          String password1 = new String(PasswordTextField1.getPassword());

          //将字符数组passwordTextField.getPassword()的内容,创建为字符串password1

          String password2 = new String(PasswordTextField2.getPassword());

          //将字符数组confirmPswTextField.getPassword()的内容,创建为字符串password2

          if(password1.equals(password2)) b=true;      //比较字符串

          return b;                                                                                                                                                             //返回布尔型变量的值

    }


}




⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -