📄 showland.java
字号:
package client;
import java.awt.Font;
import java.awt.Rectangle;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import server.entity.User;
import server.action.BusinessAction;
public class Showland extends JFrame{
JComboBox cobusername;
JPasswordField pwfuserpwd;
JLabel lbllogo;
JLabel lblsuper;
JButton btnok;
JButton btncancle;
//Showland构造方法
public Showland()
{try{jbInit();}
catch(Exception e){}}
//界面构建
public void jbInit() throws Exception
{
cobusername=new JComboBox(BusinessAction.loadusername()); //载入曾登陆帐户
pwfuserpwd=new JPasswordField(10);
lbllogo=new JLabel(new ImageIcon(".\\pic\\land\\land.jpg"));
lblsuper=new JLabel(new ImageIcon(".\\pic\\land\\super.jpg"));
btnok=new JButton("确定");
btncancle=new JButton("取消");
cobusername.setFont(new Font("宋体",0,12));
cobusername.setEditable(true);
cobusername.setBounds(new Rectangle(68, 118, 132, 23));
cobusername.addMouseMotionListener(new Showland_cobusername_mouseMotionAdapter(this));
btnok.setBounds(new Rectangle(40, 194, 77, 25));
btnok.setFont(new Font("宋体",0,12));
btnok.setMaximumSize(new Dimension(30, 23));
btnok.setMinimumSize(new Dimension(30, 23));
btnok.addActionListener(new Showland_btnok_actionAdapter(this));
btncancle.setBounds(new Rectangle(123, 194, 77, 25));
btncancle.setFont(new Font("宋体",0,12));
btncancle.addActionListener(new Showland_btncancle_actionAdapter(this));
pwfuserpwd.setFont(new Font("宋体",0,12));
pwfuserpwd.setToolTipText("键入回车登陆");
pwfuserpwd.setBounds(new Rectangle(68, 155, 132, 23));
pwfuserpwd.addKeyListener(new Showland_pwfuserpwd_keyAdapter(this));
lbllogo.setBounds(new Rectangle( -1, 0, 350, 240));
lblsuper.setBounds(new Rectangle(209, 193, 35, 30));
lblsuper.addMouseListener(new Showland_lblsuper_mouseAdapter(this));
getContentPane().setLayout(null);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.getContentPane().add(cobusername);
this.getContentPane().add(pwfuserpwd);
this.getContentPane().add(lblsuper);
this.getContentPane().add(btnok);
this.getContentPane().add(btnok);
this.getContentPane().add(btncancle);
this.getContentPane().add(lbllogo);
//隐藏超级管理员按钮
lblsuper.setBounds(new Rectangle(209, 193, 0, 0));
}
//超级用户按钮实现
public void lblsuper_mouseClicked(MouseEvent e)
{
}
//取消按钮实现
public void btncancle_actionPerformed(ActionEvent e)
{System.exit(1);}
//确定按钮实现
public void btnok_actionPerformed(ActionEvent e)
{
//得到必要信息
String username=cobusername.getSelectedItem().toString().trim();
String userpwd=new String(pwfuserpwd.getPassword()).trim();
//设置各实体属性
//设置用户实体
User user=new User();
user.setusername(username);
user.setuserpwd(userpwd);
//健壮性检查
if(username.equals("")||userpwd.equals(""))
{JOptionPane.showMessageDialog(this,"请填写完用户名和密码!","提示",JOptionPane.WARNING_MESSAGE,null);}
else
{
if(BusinessAction.chk(user)) //调用帐户检查
{
//加入帐户登陆名
BusinessAction.addusername(username);
//重绘cobusername
cobusername.setModel(new DefaultComboBoxModel(BusinessAction.loadusername()));
cobusername.updateUI();
cobusername.setSelectedItem("");
//设置登陆帐户
cobusername.setSelectedItem(username);
//进入主窗体
Mainpanel mainpanel=new Mainpanel();
mainpanel.setSize(800,600);
//居中主窗体
Dimension ScreenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension FrameSize= mainpanel.getSize();
mainpanel.setLocation((ScreenSize.width-FrameSize.width)/2,(ScreenSize.height-FrameSize.height)/2);
mainpanel.setVisible(true);
this.dispose();
}
else
{JOptionPane.showMessageDialog(this,"您的用户名或密码错误!","错误",JOptionPane.WARNING_MESSAGE,null);}
}
}
//清空曾登陆帐户名
public void cobusername_mouseMoved(MouseEvent e)
{
String username=(cobusername.getSelectedItem().toString().trim());
if(username.equals("-清空曾登陆帐户-"))
{
//清空曾登陆帐户名
BusinessAction.cleanusername();
//重绘cobusername
cobusername.setModel(new DefaultComboBoxModel(BusinessAction.loadusername()));
cobusername.updateUI();
cobusername.setSelectedItem("");
//设置登陆帐户
cobusername.setSelectedItem("");
}
}
//回车调用确定按钮
public void pwfuserpwd_keyPressed(KeyEvent e) {
if(e.getKeyCode()==10)
{
//得到必要信息
String username=cobusername.getSelectedItem().toString().trim();
String userpwd=new String(pwfuserpwd.getPassword()).trim();
//设置各实体属性
//设置用户实体
User user=new User();
user.setusername(username);
user.setuserpwd(userpwd);
//健壮性检查
if(username.equals("")||userpwd.equals("")){JOptionPane.showMessageDialog(this,"请填写完用户名和密码!","提示",JOptionPane.WARNING_MESSAGE,null);}
else
{
if(BusinessAction.chk(user)) //调用帐户检查
{
//加入帐户登陆名
BusinessAction.addusername(username);
//重绘cobusername
cobusername.setModel(new DefaultComboBoxModel(BusinessAction.loadusername()));
cobusername.updateUI();
cobusername.setSelectedItem("");
//设置登陆帐户
cobusername.setSelectedItem(username);
//进入主窗体
Mainpanel mainpanel=new Mainpanel();
mainpanel.setSize(800,600);
//居中主窗体
Dimension ScreenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension FrameSize= mainpanel.getSize();
mainpanel.setLocation((ScreenSize.width-FrameSize.width)/2,(ScreenSize.height-FrameSize.height)/2);
mainpanel.setVisible(true);
this.dispose();
}
else
{JOptionPane.showMessageDialog(this,"您的用户名或密码错误!","错误",JOptionPane.WARNING_MESSAGE,null);}
}
}
}
}
//监听器、适配器
class Showland_pwfuserpwd_keyAdapter extends KeyAdapter {
private Showland adaptee;
Showland_pwfuserpwd_keyAdapter(Showland adaptee) {
this.adaptee = adaptee;
}
public void keyPressed(KeyEvent e) {
adaptee.pwfuserpwd_keyPressed(e);
}
}
class Showland_btnok_actionAdapter implements ActionListener {
private Showland adaptee;
Showland_btnok_actionAdapter(Showland adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnok_actionPerformed(e);
}
}
class Showland_lblsuper_mouseAdapter extends MouseAdapter {
private Showland adaptee;
Showland_lblsuper_mouseAdapter(Showland adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.lblsuper_mouseClicked(e);
}
}
class Showland_btncancle_actionAdapter implements ActionListener {
private Showland adaptee;
Showland_btncancle_actionAdapter(Showland adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btncancle_actionPerformed(e);
}
}
class Showland_cobusername_mouseMotionAdapter extends MouseMotionAdapter {
private Showland adaptee;
Showland_cobusername_mouseMotionAdapter(Showland adaptee) {
this.adaptee = adaptee;
}
public void mouseMoved(MouseEvent e) {
adaptee.cobusername_mouseMoved(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -