天天看點

java gui 登陸後登陸視窗小時_Java寫的登陸視窗

要求:使用者名和密碼正确後進入首頁,錯誤提示錯誤,并且3次錯誤後将退出視窗。

我初學JavaGUI,現在我把我的思路寫一下,

1、主視窗,視窗上有文本輸入框和登陸按鈕,如圖

java gui 登陸後登陸視窗小時_Java寫的登陸視窗

2、在登陸按鈕和取消按鈕上設定時間監聽機制,

取消:退出程式;

登陸:擷取使用者名和密碼,然後與自己儲存的使用者名密碼作比較,現在兩種情況,正确與錯誤,

正确:關閉登陸視窗,并彈出新視窗,新視窗即為首頁;

錯誤:彈出新視窗,提示錯誤,并且累加,超過三次則推出程式,

現在粘上代碼,

import java.awt.Container;

import java.awt.Image;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JTextField;

public class Test10_3 {

public static void main(String [] args){

Denglu de = new Denglu();

}

}

class Denglu{

private JFrame jf = new JFrame("登陸視窗");

private JButton jb1 = new JButton("使用者名");

private JButton jb2 = new JButton("密碼");

private JButton jbLogin = new JButton("登陸");

private JButton jbquxiao = new JButton("取消");

private JTextField jtName = new JTextField();

private JTextField jtPwd = new JTextField();

private final String mima = "sss111";//此為預設的密碼

private int count = 0;

private JFrame jfZhu = new JFrame();

ImageIcon image = new ImageIcon("C:\\Users\\sss\\Desktop\\index.jpg");//這為我的圖檔路徑

private JLabel jlZhu = new JLabel(image);

private JFrame jfCuo = new JFrame();

private JLabel jlCuo = new JLabel("你輸入的使用者名密碼不比對!");

public Denglu(){

Container cp = jf.getContentPane();

cp.setLayout(null);

jtName.setBounds(150,50,100,20);

cp.add(jtName);

jb1.setBounds(10,50,100,20);

cp.add(jb1);

jtPwd.setBounds(150,100,100,20);

cp.add(jtPwd);

jb2.setBounds(10,100,100,20);

cp.add(jb2);

jbLogin.setBounds(20, 150, 100, 20);

jbquxiao.setBounds(150, 150, 100, 20);

cp.add(jbLogin);

cp.add(jbquxiao);

jbquxiao.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

System.exit(0);

}

});

jbLogin.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

String name = jtName.getText();

String pwd = jtPwd.getText();

String aa = name+pwd;

if(aa.equals(mima)){//Java中判斷兩個字元串相等用equals()函數。

jf.dispose();//關閉登陸面闆

Container cp2 = jfZhu.getContentPane();

cp2.setLayout(null);

jlZhu.setBounds(0, 0, 400, 300);

cp2.add(jlZhu);

jfZhu.setSize(400,300);

jfZhu.setVisible(true);

}

else{

if(0<=count&&count<3){

Container cp3 = jfCuo.getContentPane();

cp3.setLayout(null);

jlCuo.setBounds(0, 0, 400, 300);

cp3.add(jlCuo);

jfCuo.setSize(400,300);

jfCuo.setVisible(true);

count++;

}

else{

if(count>=3)

System.exit(0);

}

}

}

});

jf.setSize(400, 300);

jf.setVisible(true);

}

}