📄 login.java
字号:
package jin.login;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
import jin.view.*;
import jin.handler.*;
public class Login extends JInternalFrame
{
private JLabel[] labels;
private JTextField[] fields;
private JPasswordField passwordField;
private ButtonsPanel buttonsPanel;
private JPanel[] panels;
private JPanel north;
private JPanel south;
private JPanel imagePanel;
private Checkbox[] checkboxs;
private CheckboxGroup group;
private JDesktopPane desktopPane;
private JFrame frame;
//加了3个label 1个field 2个panel
public Login(JFrame frame)
{
super("",true,true,true,true);
this.frame=frame;
labels=new JLabel[6];
fields=new JTextField[2];
for(int i=0;i<2;i++)
{
fields[i]=new JTextField(8);
}
passwordField=new JPasswordField(8);
buttonsPanel=new ButtonsPanel(2);
panels=new JPanel[6];
north=new JPanel();
south=new JPanel(new GridLayout(6,1));
checkboxs=new Checkbox[3];
group=new CheckboxGroup();
checkboxs[0]=new Checkbox("管理员",true,group);
checkboxs[1]=new Checkbox("教师",false,group);
checkboxs[2]=new Checkbox("学生",false,group);
String[] titles={"帐号 ","密码 ","欢迎登录学生选课系统","验证码 ","输入验证码",""};
String[] captions={"确定","退出"};
buttonsPanel.setTitles(captions);
Font font=new Font("楷体",Font.BOLD,16);
for(int i=0;i<6;i++)
{
labels[i]=new JLabel(titles[i]);
labels[i].setFont(font);
}
String text="";
for(int i=0;i<4;i++)
{
int num=(int)(Math.random()*10);
text=text+num;
}
labels[5].setText(text);
labels[5].setSize(300,300);
Font font1=new Font("幼圆",Font.BOLD,36);
labels[5].setFont(font1);
labels[5].setForeground(Color.GREEN);
labels[5].setOpaque(true);
//labels[5].setBackground(Color.pink);
Font font2=new Font("楷体",Font.BOLD,34);
labels[2].setFont(font2);
labels[2].setForeground(Color.CYAN);
labels[2].setOpaque(true);
labels[2].setBackground(Color.pink);
north.add(labels[2]);
north.setBackground(Color.pink);
imagePanel=new JPanel();
Icon icon=new ImageIcon("flower.jpg");
JLabel pic=new JLabel(icon);
imagePanel.add(pic);
for(int i=0;i<6;i++)
{
panels[i]=new JPanel();
south.add(panels[i]);
}
panels[3].add(labels[3]);
panels[3].add(labels[5]);
panels[4].add(labels[4]);
panels[4].add(fields[1]);
LoginHandler logHandler=new LoginHandler(this);
panels[0].add(checkboxs[0]);
panels[0].add(checkboxs[1]);
panels[0].add(checkboxs[2]);
panels[1].add(labels[0]);
panels[1].add(fields[0]);
panels[2].add(labels[1]);
panels[2].add(passwordField);
panels[5].add(buttonsPanel);
add(north,BorderLayout.NORTH);
add(imagePanel,BorderLayout.CENTER);
add(south,BorderLayout.SOUTH);
desktopPane=new JDesktopPane();
desktopPane.add(this);
frame.add(desktopPane);
this.setSize(660,740);
this.setVisible(true);
//this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
//fields[2] 输入的是验证码 labels[5] 给出的验证码
public JLabel getLagbel()
{
return labels[5];
}
public JTextField getField(int index)
{
return this.fields[index];
}
public JPasswordField getPasswordField()
{
return this.passwordField;
}
public JButton[] getButtons()
{
return buttonsPanel.getButtons();
}
public JButton getButton(int index)
{
return buttonsPanel.getButton(index);
}
public Checkbox getCheckbox(int index)
{
return checkboxs[index];
}
public JFrame getFrame()
{
return this.frame;
}
public JDesktopPane getDesktopPane()
{
return this.desktopPane;
}
public static void main(String args[])
{
JFrame frame=new JFrame();
Login login=new Login(frame);
frame.setSize(680,760);
frame.setVisible(true);
}
}
/*
field.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
passwordField.grabFocus();
}
}
);
//文本框输入验证
field.addKeyListener(
new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
if((e.getKeyCode()>=0&&e.getKeyCode()<=9)||(e.getKeyChar()>='a'&&e.getKeyChar()<='z')||(e.getKeyChar()>='A'||e.getKeyChar()<='Z'))
{
System.out.println(e.getKeyChar());
}
else
{
field.setText("");
System.out.println("AAAAAAAAAAA");
}
}
}
);
passwordField.addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
field.grabFocus();
}
}
);
//密码框输入验证
passwordField.addKeyListener(
new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
if((e.getKeyCode()>=0&&e.getKeyCode()<=9)||(e.getKeyChar()>='a'&&e.getKeyChar()<='z')||(e.getKeyChar()>='A'||e.getKeyChar()<='Z'))
{
//System.out.println(e.getKeyChar());
}
else
{
field.setText("");
System.out.println("AAAAAAAAAAA");
}
}
}
);
buttons[0].addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
//连接数据库验证
if(checkboxs[1].getState()==true)
{
String sql="select id,password from StudLogin";
UsersDAO usersDAO=new UsersDAO();
ArrayList logins=usersDAO.excuteQuery(sql);
LoginBean loginBean=null;
logins=usersDAO.excuteQuery(sql);
boolean N=false;
for(int i=0;i<logins.size();i++)
{
loginBean=(LoginBean)logins.get(i);
if(field.getText().trim().equals(loginBean.getId().trim())&&passwordField.getText().trim().equals(loginBean.getPassword().trim()))
{
N=true;
}
}
if(N)
{
System.out.println("登陆成功");
Login.this.setVisible(false);
//Admin admin=new Admin();
}
else
{
System.out.println("登陆失败!");
System.exit(0);
}
}
if(checkboxs[0].getState()==true)
{
String sql="select id,password from AdminLogin";
UsersDAO usersDAO=new UsersDAO();
ArrayList logins=usersDAO.excuteQuery(sql);
LoginBean loginBean=null;
logins=usersDAO.excuteQuery(sql);
boolean N=false;
for(int i=0;i<logins.size();i++)
{
loginBean=(LoginBean)logins.get(i);
if(field.getText().trim().equals(loginBean.getId().trim())&&passwordField.getText().trim().equals(loginBean.getPassword().trim()))
{
N=true;
}
}
if(N)
{
System.out.println("登陆成功");
Login.this.setVisible(false);
Admin admin=new Admin();
}
else
{
System.out.println("登陆失败!");
System.exit(0);
}
}
}
}
);
buttons[1].addActionListener(
new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
);
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -