📄 regframe.java
字号:
package res;
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.Rectangle;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.JButton;
import javax.swing.JPasswordField;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JOptionPane;
import javax.swing.JComboBox;
import java.sql.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowAdapter;
import java.awt.Font;
/**
* <p>Title: 注册窗口</p>
*
* <p>Description: 新同学的个人信息注册 </p>
*
* <p>Copyright: A1Q6073-未定义小组 2006</p>
*
* <p>Company: 北大青鸟Aptech(西安毕诚) </p>
*
* @author not 王亮 冯瑞 冯鹏 刘文涛 赵凡(按姓氏笔画排序)
* @version 1.0
*/
public class RegFrame extends JFrame {
public RegFrame(MainFrame mf) {
try {
mfr=mf;
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
MainFrame mfr;
TestImage tImage = new TestImage();
JLabel lblRcall = new JLabel();
JLabel lblRname = new JLabel();
JLabel lblRsex = new JLabel();
JTextField txtRcall = new JTextField();
JLabel lblRpwd = new JLabel();
JLabel lblRadds = new JLabel();
JTextField txtRname = new JTextField();
JTextField txtRadds = new JTextField();
JTextField txtRmail = new JTextField();
JLabel lblRmail = new JLabel();
JButton btnRsubmit = new JButton();
JPasswordField txtRpwd = new JPasswordField();
JLabel lblRid = new JLabel();
JTextField txtRid = new JTextField();
JOptionPane oppMeg = new JOptionPane();
JComboBox cmbRsex = new JComboBox();
DBconnection db = new DBconnection();
ResultSet rs;
JLabel jLabel3 = new JLabel();
JLabel jLabel1 = new JLabel();
JLabel jLabel2 = new JLabel();
JLabel jLabel4 = new JLabel();
private void jbInit() throws Exception {
getContentPane().setLayout(null);
tImage.setLayout(null);
tImage.setBounds(new Rectangle(0, 0, 300, 400)); //面板图片大小,下行为需要插的图片
tImage.setImage("Image\\wr.jpg");
tImage.setSize(300, 400);
this.setResizable(false);
setTitle("注册");
lblRcall.setText("联系电话:");
lblRcall.setBounds(new Rectangle(43, 194, 65, 17));
lblRname.setText("姓 名:");
lblRname.setBounds(new Rectangle(43, 105, 74, 20));
lblRsex.setText("性 别:");
lblRsex.setBounds(new Rectangle(43, 167, 78, 14));
txtRcall.setBounds(new Rectangle(132, 193, 120, 20));
lblRpwd.setText("密 码:");
lblRpwd.setBounds(new Rectangle(43, 134, 75, 15));
lblRadds.setText("现住地址:");
lblRadds.setBounds(new Rectangle(43, 250, 64, 16));
txtRname.setBounds(new Rectangle(132, 103, 102, 19));
txtRadds.setBounds(new Rectangle(132, 250, 120, 20));
txtRmail.setBounds(new Rectangle(132, 223, 120, 19));
lblRmail.setText("电子邮件:");
lblRmail.setBounds(new Rectangle(43, 223, 64, 15));
btnRsubmit.setBounds(new Rectangle(209, 288, 66, 21));
btnRsubmit.setText("提交");
btnRsubmit.addActionListener(new RegFrame_btnsubmit_actionAdapter(this));
txtRpwd.setBounds(new Rectangle(132, 130, 102, 20));
lblRid.setText("学 号:");
lblRid.setBounds(new Rectangle(43, 73, 72, 24));
txtRid.setText("A1Q6073-");
txtRid.setBounds(new Rectangle(132, 73, 102, 22));
cmbRsex.setBounds(new Rectangle(132, 162, 65, 19));
cmbRsex.addItem("male");
cmbRsex.addItem("female");
this.addWindowListener(new RegFrame_this_windowAdapter(this));
jLabel3.setForeground(Color.red);
jLabel3.setText("* 01~30");
jLabel3.setBounds(new Rectangle(237, 73, 57, 21));
jLabel1.setForeground(Color.red);
jLabel1.setText("*");
jLabel1.setBounds(new Rectangle(237, 101, 10, 21));
jLabel2.setForeground(Color.red);
jLabel2.setText("* 至少6位");
jLabel2.setBounds(new Rectangle(236, 130, 76, 21));
jLabel4.setFont(new java.awt.Font("宋体", Font.BOLD, 16));
jLabel4.setForeground(Color.red);
jLabel4.setText("后面有*必填");
jLabel4.setBounds(new Rectangle(114, 33, 95, 29));
this.add(tImage);
tImage.add(txtRadds);
tImage.add(btnRsubmit);
tImage.add(lblRadds);
tImage.add(lblRmail);
tImage.add(txtRmail);
tImage.add(lblRcall);
tImage.add(txtRcall);
tImage.add(lblRsex);
tImage.add(lblRpwd);
tImage.add(txtRpwd);
tImage.add(lblRname);
tImage.add(txtRname);
tImage.add(lblRid);
tImage.add(txtRid);
tImage.add(cmbRsex);
tImage.add(jLabel3);
tImage.add(jLabel1);
tImage.add(jLabel2);
tImage.add(jLabel4);
}
/*提交注册事件*/
public void btnsubmit_actionPerformed(ActionEvent e) {
try {
/*以下是判断学号、姓名、密码的格式是否正确及是否已注册*/
if (txtRid.getText().length() != 10) {
JOptionPane.showMessageDialog(this,
"请正确输入学号,格式为:A1Q6073-01到30之间");
txtRid.setText("A1Q6073-");
} else {
String id = txtRid.getText();
//判断学号的后两们是否是数字
if (!txtRid.getText().subSequence(0, 8).equals("A1Q6073-") ||
!Character.isDigit(id.charAt(8)) ||
!Character.isDigit(id.charAt(9))) {
JOptionPane.showMessageDialog(this,
"请正确输入学号,格式为:A1Q6073-01到30之间输入aaa");
txtRid.setText("A1Q6073-");
} else {
int temp = Integer.parseInt(txtRid.getText().substring(
8,
10));
//判断学号后两们是否是大于 0 且小于 30
if (temp <= 0 || temp > 30) {
JOptionPane.showMessageDialog(this,
"请正确输入学号,格式为:A1Q6073-01到30之间输入");
txtRid.setText("A1Q6073-");
} else {
String sql1 = "select id from stumeg where id='" +
txtRid.getText() + "'";
rs = db.GetRs(sql1);
if (rs.next()) {
JOptionPane.showMessageDialog(this, "此学号已被注册,请确认!");
txtRid.setText("A1Q6073-");
} else if (txtRname.getText().equals("")) {
JOptionPane.showMessageDialog(this, "请输入姓名!");
} else if (txtRname.getText().length() > 4) {
JOptionPane.showMessageDialog(this, "姓名最多为四个字");
} else if (txtRpwd.getText().equals("")) {
JOptionPane.showMessageDialog(this, "请输入密码");
} else if (txtRpwd.getText().length() < 6) {
JOptionPane.showMessageDialog(this, "您输入的密码长度小于6位");
} else {
/*判断E-mail是否输入*/
if (!txtRmail.getText().equals("")) {
int eml1 = txtRmail.getText().indexOf('@');
int eml2 = txtRmail.getText().indexOf('.');
/*判断E-mail格式正确性*/
if (eml1 > 0 && eml2 > 0 && eml2 > eml1) {
String sql2 =
"insert into StuMeg values ('" +
txtRid.getText() + "','" +
txtRname.getText() + "','" +
txtRpwd.getText() + "','" +
cmbRsex.getSelectedItem() + "','" +
txtRcall.getText() + "','" +
txtRmail.getText() + "','" +
txtRadds.getText() + "',0) ";
db.ResultSql(sql2);
JOptionPane.showMessageDialog(this, "注册成功");
this.dispose();
mfr.setEnabled(true);
} else {
JOptionPane.showMessageDialog(this,
"您输入的E-mail格式不对");
}
} else {
String sql2 = "insert into StuMeg values ('" +
txtRid.getText() + "','" +
txtRname.getText() + "','" +
txtRpwd.getText() + "','" +
cmbRsex.getSelectedItem() + "','" +
txtRcall.getText() + "','" +
txtRmail.getText() + "','" +
txtRadds.getText() + "',0) ";
db.ResultSql(sql2);
JOptionPane.showMessageDialog(this, "注册成功");
this.dispose();
mfr.setEnabled(true);
}
}
}
}
}
//关闭 ResultSet 对象
rs.close();
} catch (Exception ex) {
}
}
/*窗口关闭事件*/
public void this_windowClosing(WindowEvent e) {
//主窗口解锁
mfr.setEnabled(true);
}
}
class RegFrame_this_windowAdapter extends WindowAdapter {
private RegFrame adaptee;
RegFrame_this_windowAdapter(RegFrame adaptee) {
this.adaptee = adaptee;
}
public void windowClosed(WindowEvent e) {
}
public void windowClosing(WindowEvent e) {
adaptee.this_windowClosing(e);
}
}
class RegFrame_btnsubmit_actionAdapter implements ActionListener {
private RegFrame adaptee;
RegFrame_btnsubmit_actionAdapter(RegFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnsubmit_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -