package scoremis;
import java.awt.*;
import javax.swing.*;
import java.sql.*;
import java.awt.event.*;
import javax.swing.border.*;
import java.util.Date;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2007</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class StudentQuery extends JFrame {
String sql = "", sf = "";
public StudentQuery(String xm, String xh, String xb, Date sr, String bj,
String sf) {
try {
sid = xh;
sname = xm;
ssex = xb;
sbrith = sr;
sclass = bj;
SID.setText(xh);
Sname.setText(xm);
brith.setText(sbrith.toString());
this.sf = sf;
jbInit();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
public StudentQuery(String xm, String xh) {
try {
sid = xh;
sname = xm;
edit.setEnabled(false);
sex.setEnabled(false);
sgreade.setEnabled(false);
jbInit();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
titledBorder1 = new TitledBorder("");
getContentPane().setLayout(null);
jLabel1.setFont(new java.awt.Font("Dialog", 1, 22)); //初始化各组件
jLabel1.setToolTipText("");
photo.setBackground(Color.gray);
photo.setFont(new java.awt.Font("Dialog", 0, 12));
photo.setForeground(Color.black);
photo.setBorder(titledBorder1);
photo.setHorizontalTextPosition(SwingConstants.CENTER);
photo.setIcon(null);
photo.setText("暂无照片");
brith.setFont(new java.awt.Font("Dialog", 0, 12));
brith.setBounds(new Rectangle(142, 216, 116, 25));
photo.setBounds(new Rectangle(285, 79, 100, 120));
SID.setFont(new java.awt.Font("Dialog", 0, 12));
SID.setBounds(new Rectangle(142, 79, 115, 27));
sgreade.setFont(new java.awt.Font("Dialog", 0, 12));
sgreade.setBounds(new Rectangle(142, 176, 115, 25));
Sname.setFont(new java.awt.Font("Dialog", 0, 12));
Sname.setBounds(new Rectangle(142, 110, 115, 27));
sex.setFont(new java.awt.Font("Dialog", 0, 12));
sex.setBounds(new Rectangle(142, 142, 115, 27));
jLabel1.setBounds(new Rectangle(111, 22, 149, 38));
quit.setBounds(new Rectangle(248, 257, 83, 25));
quit.setFont(new java.awt.Font("Dialog", 0, 12));
edit.setBounds(new Rectangle(93, 257, 83, 25));
edit.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel2.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel2.setText("学 号:");
jLabel2.setBounds(new Rectangle(69, 83, 71, 15));
jLabel3.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel3.setToolTipText("");
jLabel3.setText("姓 名:");
jLabel3.setBounds(new Rectangle(69, 115, 63, 15));
jLabel4.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel4.setToolTipText("");
jLabel4.setText("性 别:");
jLabel4.setBounds(new Rectangle(69, 147, 60, 15));
jLabel6.setFont(new java.awt.Font("Dialog", 0, 12));
jLabel6.setRequestFocusEnabled(true);
jLabel6.setText("班 级:");
jLabel6.setBounds(new Rectangle(69, 179, 65, 15));
jLabel5.setFont(new java.awt.Font("Dialog", 0, 12));
sex.addItem("男");
sex.addItem("女");sex.setSelectedItem(ssex);
{
dbconn db = new dbconn();
ResultSet rs1 = null;
String sql1 = "select distinct Cgreade from T_C";
rs1 = db.Query(sql1);
while (rs1.next()) {
sgreade.addItem(rs1.getString(1));
}
sgreade.setSelectedItem(sclass);
}
jLabel5.setBounds(new Rectangle(69, 221, 68, 15)); //添加各组件
this.getContentPane().add(photo);
this.getContentPane().add(jLabel2);
this.getContentPane().add(jLabel3);
this.getContentPane().add(jLabel4);
this.getContentPane().add(jLabel6);
this.getContentPane().add(jLabel5);
this.getContentPane().add(Sname);
this.getContentPane().add(SID);
this.getContentPane().add(sex);
this.getContentPane().add(sgreade);
this.getContentPane().add(brith);
this.getContentPane().add(quit);
this.getContentPane().add(edit);
this.getContentPane().add(jLabel1);
edit.addActionListener(new ActionListener() { //给“保存”添加事件监视器
public void actionPerformed(ActionEvent e) {
dbconn db = new dbconn();
String sxh = SID.getText();
String sxm = Sname.getText();
String sxb = (String) sex.getSelectedItem(); //.getText();
String sbj = (String) sgreade.getSelectedItem(); //.getText();
String ssr = brith.getText();
Date datel;
datel=java.sql.Date.valueOf(ssr);
sql = "update student set ID='" + sxh + "',name='" + sxm + "',sex='" +
sxb + "',birthday=#" + datel + "#,greade='" + sbj + "' where ID='" +
sid + "' and name='" + sname + "' and sex='" + ssex +
"' and birthday=#" + sbrith + "# and greade='" + sclass + "'";
int i = db.Update(sql);
if (i > 0) {
JOptionPane.showMessageDialog(null, "修改成功!!");
sid=sxh;sname=sxm;ssex=sxb;sclass=sbj;sbrith=datel;
}
else {
JOptionPane.showMessageDialog(null, "修改失败!!");
}
}
});
quit.addActionListener(new ActionListener() { //给“退出”添加事件监视器
public void actionPerformed(ActionEvent e) {
//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE );
dispose();//setVisible(false);
StuUI.qs.query.doClick();
}
});
sql = "select * from student where ID='" + sid + "' and name='" + sname +
"'";
ResultSet rs = null;
try {
String zp = "";
dbconn db = new dbconn();
rs = db.Query(sql); //查询相应的记录
/*if (rs.next()) { //如果是学生,则不能修改
SID.setText(rs.getString("ID"));
SID.setEditable(false);
Sname.setText(rs.getString("name"));
Sname.setEditable(false);
sex.equals(rs.getString("sex"));
sex.setEnabled(false);
brith.setText( (rs.getDate("birthday")).toString());
brith.setEditable(false);
sgreade.equals(rs.getString("greade"));
//sgreade.setText(rs.getString("greade"));
sgreade.setEnabled(false);
zp = rs.getString("photo");
if (!zp.equals("")) {
photo.setIcon(new ImageIcon(zp));
}
}*/
if (sf.equals("teacher")) { //如果是老师,可以进行修改
SID.setEditable(true);
Sname.setEditable(true);
sex.setEnabled(true);
brith.setEnabled(true);
sgreade.setEditable(true);
}else{
if (rs.next()) { //如果是学生,则不能修改
SID.setText(rs.getString("ID"));
SID.setEditable(false);
Sname.setText(rs.getString("name"));
Sname.setEditable(false);
sex.setSelectedItem(rs.getString("sex"));
sex.setEnabled(false);
brith.setText((rs.getDate("birthday")).toString());
brith.setEditable(false);
sgreade.setSelectedItem(rs.getString("greade"));
sgreade.setEnabled(false);
zp = rs.getString("photo");
if (!zp.equals("")) {
photo.setIcon(new ImageIcon(zp));
}
}
}
db.close();
}
catch (Exception e) {
System.out.println(e.toString());
}
}
JLabel jLabel1 = new JLabel("学生基本信息");
JLabel jLabel2 = new JLabel("学号:");
JTextField SID = new JTextField();
JLabel jLabel3 = new JLabel("姓名:");
JTextField Sname = new JTextField();
JLabel jLabel4 = new JLabel("性别:");
//JTextField sex = new JTextField();
JComboBox sex = new JComboBox();
JLabel jLabel5 = new JLabel("出生日期:");
JTextField brith = new JTextField();
JLabel jLabel6 = new JLabel("班级:");
JComboBox sgre