临时的登录界面

添加背景图片函数:

public class lconlmage extends JPanel{
ImageIcon icon;
Image img;
public lconlmage()
{

icon=new ImageIcon("界面2.jpg" );  //图片  
img=icon.getImage();

}
public void paintComponent(Graphics g)
{

super.paintComponent(g);  
g.drawImage(img,0,0,null );  

}
}

界面居中函数:

import java.awt.Dimension;
import java.awt.Toolkit;
import javax.swing.JFrame;
//用到的包

public class Hq_wh {

public static void Hq_wh(JFrame f) {

    Dimension size = Toolkit.getDefaultToolkit().getScreenSize();
    f.setLocation((size.width-f.getWidth())/2,(size.height-f.getHeight())/2);//获取界面大小,使其居中

    }
}

主界面:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import shouye.CaiDan; //跳转用到的包

public class Denglu extends JFrame implements ActionListener{

JLabel zh,mm,sf;  //声明账户、密码、省份;
JTextField zhk;
JPasswordField mmk;
JComboBox xllb;
  //账户、密码、身份对应的输入框;

JButton jbLogin,jbCancel,exitItem;  //登录、忘记秘密、退出按钮
Toolkit took = Toolkit.getDefaultToolkit();
public Denglu(){
    this.setTitle("系统登录");
    this.setSize(800,600);
    Hq_wh.Hq_wh(this);       //调用居中
    this.setResizable(false);   //控制窗口是否可以改变大小
    zh = new JLabel("用户账号");
    zhk = new JTextField(20);    //账户框最大输入长度为20
    mm = new JLabel("用户密码");
    mmk= new JPasswordField(20);
    sf= new JLabel("用户身份");
    xllb= new JComboBox(new String[]{"管理员","学生","教师"});
    jbLogin = new JButton("登录");
    jbCancel = new JButton("忘记密码");
    exitItem = new JButton("退出");

    jbLogin.addActionListener(this);
    jbCancel.addActionListener(this);
    exitItem.addActionListener(this);   //监听按钮

    JTextField zhh = new JTextField(50);
    zhh.setEditable(false);  //这个窗口不能编辑
    zhh.setBackground(Color.LIGHT_GRAY);

//以下数字部分设置每一个文本框、按钮对应位置;
    zhh.setBounds(490, 260, 260, 150);
    zh.setBounds(510, 280, 60, 20);
    zhk.setBounds(570, 280, 120, 20);
    mm.setBounds(510, 310, 60, 20);
    mmk.setBounds(570, 310, 120, 20);
    sf.setBounds(510, 340, 60, 20);
    xllb.setBounds(570, 340, 120, 20);
    jbLogin.setBounds(500, 370, 60, 20);
    jbCancel.setBounds(570, 370, 100, 20);
    exitItem.setBounds(680, 370, 60, 20);

    this.add(zhk);
    this.add(zh);
    this.add(mm);
    this.add(mmk);
    this.add(sf);
    this.add(xllb);
    this.add(jbLogin);
    this.add(jbCancel);
    this.add(exitItem);
    this.add(zhh);
    add(new lconlmage());   //调用函数添加图片

//以上部分使用add()输出

    setVisible(true);
    setResizable(false);
    setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);

    }

public void actionPerformed(ActionEvent e) {
    //判断是那个按钮
    if(e.getSource() == jbLogin ) {  //如果是登录按钮 进行下一步判断
        //判断用户名与密码是否正确
        if( (zhk.getText().equals("123") ) && (mmk.getText().equals("123") ) )  
        {
            setVisible(false);    //关闭当前窗口;
            new CaiDan();    //跳转至成功登录界面CaiDan();
        }
        else
        {
            JOptionPane.showMessageDialog(null, "用户名或者秘密错误!");
        }
    }

    if(e.getSource()==jbCancel) {  //如果是“忘记密码”按钮,(暂未设置效果)
        return;
    }
    if(e.getSource()==exitItem) {  //如果是退出按钮 ,就关闭
        System.exit(0);
    }
}

public static void main(String[] args) {
    new Denglu();   //实例化登录窗口
}

}

登录成功界面

代码(略),相当于只是个看得见图片的窗口

运行截图效果:
这里写图片描述

输入错误密码截图:
这里写图片描述

正确登录截图:
这里写图片描述

跳转成功!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值