📄 editstu.java~43~
字号:
package scoremis;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.table.AbstractTableModel;
import java.sql.ResultSet;
import java.util.Vector;
import javax.swing.table.DefaultTableModel;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2007</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/
public class editSTU extends JPanel {
public editSTU() {
try {
jbInit();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
this.setLayout(null);
jLabel1.setFont(new java.awt.Font("Dialog", 1, 22));
bj.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
sgreade.removeAllItems();
if (bj.isSelected()) {
try {
dbconn db = new dbconn();
ResultSet rs = db.Query("select distinct greade from student");
sgreade.addItem(" ");
while (rs.next()) {
sgreade.addItem(rs.getString(1));
}
}
catch (Exception er) {
System.out.println(er.toString());
}
}
}
});
jScrollPane1.setFont(new java.awt.Font("Dialog", 0, 12));
jScrollPane1.setBounds(new Rectangle(21, 175, 370, 161)); //设置各组件的位置
jLabel1.setBounds(new Rectangle(130, 13, 225, 36));
bj.setFont(new java.awt.Font("Dialog", 0, 12));
bj.setBounds(new Rectangle(54, 74, 65, 27));
sgreade.setFont(new java.awt.Font("Dialog", 0, 12));
sgreade.setBounds(new Rectangle(107, 75, 116, 23));
del.setBounds(new Rectangle(304, 123, 66, 27));
del.setFont(new java.awt.Font("Dialog", 0, 12));
edit.setBounds(new Rectangle(192, 124, 68, 27));
edit.setFont(new java.awt.Font("Dialog", 0, 12));
query.setBounds(new Rectangle(63, 125, 73, 27));
query.setFont(new java.awt.Font("Dialog", 0, 12));
query.setActionCommand("查询");
model.addColumn("学号");
model.addColumn("姓名");
model.addColumn("性别");
model.addColumn("出生年月");
model.addColumn("所在班级");
dbtable.addMouseListener(new MouseAdapter() { //给表格添加监视器
public void mouseClicked(MouseEvent e) {
int j = dbtable.getSelectedRow();
xh1 = (String) model.getValueAt(j, 0);
xm1 = (String) model.getValueAt(j, 1);
xb1 = (String) model.getValueAt(j, 2);
sr1 = (java.sql.Date) model.getValueAt(j, 3);
bj1 = (String) model.getValueAt(j, 4);
del.setEnabled(true);
edit.setEnabled(true);
}
});
xm.setFont(new java.awt.Font("Dialog", 0, 12));
xm.setBounds(new Rectangle(245, 75, 61, 23));
sname.setFont(new java.awt.Font("Dialog", 0, 12));
sname.setText("");
sname.setBounds(new Rectangle(303, 73, 91, 26));//添加各组件
this.add(sgreade);
this.add(bj);
this.add(xm);
this.add(sname);
this.add(jScrollPane1);
this.add(query);
this.add(del);
this.add(edit);
this.add(jLabel1);
query.addActionListener(new Handel()); //给各组件添加事件监视器
edit.addActionListener(new Handel());
del.addActionListener(new Handel());
del.setEnabled(false);
edit.setEnabled(false);
}
class Handel implements ActionListener { //事件处理器
public void actionPerformed(ActionEvent e) {
dbconn db = new dbconn();
if (e.getSource() == edit) { //对“修改”事件进行处理
Toolkit tk = Toolkit.getDefaultToolkit();
Dimension sSize = tk.getScreenSize();
int sh = sSize.height;
int sw = sSize.width;
StudentQuery sq = new StudentQuery(xm1, xh1, xb1, sr1, bj1, "teacher");
sq.setTitle("修改学生信息");
sq.setSize(sh / 2 + 100, sw / 2);
sq.setLocation(sh / 4, sw / 4);
sq.setVisible(true);
}
if (e.getSource() == del) { //对“删除”事件进行处理
int y = JOptionPane.showConfirmDialog(null, "你确定要删除吗?", "删除学生对话框",
JOptionPane.YES_NO_OPTION,
JOptionPane.INFORMATION_MESSAGE);
String sql = "delete * from student where ID='" + xh1 + "' and name='" +
xm1 + "' and sex='" + xb1 + "' and birthday=#" + sr1 +
"# and greade='" + bj1 + "'";
if (y == 0) {
int i = db.Update(sql); // 执行删除SQL语句
if (i > 0) {
JOptionPane.showMessageDialog(null, "删除成功 !!");
query.doClick();
}
else {
JOptionPane.showMessageDialog(null, "删除失败!!");
}
}
}
else { //处理“查询”事件
String sbj, sxm;
String sql = "select * from student";
if (xm.isSelected() && bj.isSelected()) { //构建相应的SQL语句
sxm = sname.getText();
sql = "select * from student where greade='" +
(String) sgreade.getSelectedItem() + "' and name='" + sxm + "'";
}
else if (bj.isSelected()) {
sbj = (String) sgreade.getSelectedItem();
sql = "select * from student where greade='" + sbj + "'";
}
else if (xm.isSelected()) {
sql = "select * from student where name='" + (String) sname.getText() +
"'";
}
int j = model.getRowCount(); //首先删除表格原有数据
if (j > 0) {
for (int i = 0; i < j; i++) {
model.removeRow(0);
}
}
dbtable.setVisible(true);
try {
ResultSet rs = db.Query(sql); //执行查询SQL语句
while (rs.next()) {
tempvector = new Vector(1, 1);
tempvector.add(rs.getString(1));
tempvector.add(rs.getString(2));
tempvector.add(rs.getString(3));
tempvector.add(rs.getDate(4));
tempvector.add(rs.getString(5));
model.addRow(tempvector); //将查询结果添加到表格中
}
}
catch (Exception ex) {
System.out.println(ex.toString());
}
}
}
}
JLabel jLabel1 = new JLabel("学生基本信息管理"); //初始化各组件
JComboBox sgreade = new JComboBox();
JCheckBox bj = new JCheckBox("班级:");
JCheckBox xm = new JCheckBox("姓名");
JButton query = new JButton("查询");
JButton del = new JButton("删除");
JButton edit = new JButton("修改");
Vector tempvector = new Vector(1, 1);
DefaultTableModel model = new DefaultTableModel();
JTable dbtable = new JTable(model);
JScrollPane jScrollPane1 = new JScrollPane(dbtable);
JTextField sname = new JTextField();
String xh1, xm1, xb1, bj1;
java.sql.Date sr1;
void quit_actionPerformed(ActionEvent e) {
setVisible(false); //System.exit(0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -