📄 teacherinfoframe.java~27~
字号:
package prjTeacher;
import prjTeacher.*;
import java.util.*;
import java.awt.BorderLayout;
import prjsystementer.*;
import javax.swing.*;
import javax.swing.JLabel;
import java.awt.Rectangle;
import java.awt.Font;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.ResultSet;
import java.sql.*;
import javax.swing.table.TableModel;
import java.awt.Color;
public class TeacherInfoFrame extends JDialog {
public TeacherInfoFrame() {
try {
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
getContentPane().setLayout(null);
lblTeacher.setFont(new java.awt.Font("宋体", Font.PLAIN, 25));
lblTeacher.setText("教师信息列表");
lblTeacher.setBounds(new Rectangle(109, 22, 183, 24));
jScrollPane1.getViewport().setBackground(Color.orange);
jScrollPane1.setBounds(new Rectangle(14, 60, 384, 228));
btnNew.setBackground(Color.white);
btnNew.setBounds(new Rectangle(8, 306, 83, 25));
btnNew.setText("添加");
btnNew.addActionListener(new TeacherInfoFrame_btnNew_actionAdapter(this));
btnEdit.setBackground(Color.white);
btnEdit.setBounds(new Rectangle(112, 306, 83, 25));
btnEdit.setToolTipText("");
btnEdit.setText("修改");
btnEdit.addActionListener(new TeacherInfoFrame_btnEdit_actionAdapter(this));
btnDelete.setBackground(Color.white);
btnDelete.setBounds(new Rectangle(218, 306, 83, 25));
btnDelete.setText("删除");
btnDelete.addActionListener(new
TeacherInfoFrame_btnDelete_actionAdapter(this));
btnCancel.setBackground(Color.white);
btnCancel.setBounds(new Rectangle(322, 306, 83, 25));
btnCancel.setText("关闭");
btnCancel.addActionListener(new
TeacherInfoFrame_btnCancel_actionAdapter(this));
this.getContentPane().setBackground(Color.orange);
this.setTitle("教师信息列表");
this.getContentPane().add(lblTeacher);
this.getContentPane().add(jScrollPane1);
this.getContentPane().add(btnNew);
this.getContentPane().add(btnEdit);
this.getContentPane().add(btnDelete);
this.getContentPane().add(btnCancel);
jScrollPane1.getViewport().add(tblTeacher);
fillTable();
}
private void fillTable() {
DBManager db = new DBManager();
String sql = "select * from T_TEACHER ";
ResultSet rs = db.ExecuteQuery(sql);
ArrayList al = new ArrayList();
try {
while (rs.next()) {
String ID = rs.getString("teacherId");
String Name = rs.getString("teacherName");
String Phone = rs.getString("teacherTel");
String Memo = rs.getString("Memo");
Teacher t = new Teacher();
t.setTeacherID(ID);
t.setTeacherName(Name);
t.setTeacherPhone(Phone);
t.setTeacherMemo(Memo);
al.add(t);
}
TeacherModal tm = new TeacherModal();
tm.al = al;
this.tblTeacher.setModel(tm);
} catch (SQLException ex) {
ex.printStackTrace();
}
}
// public static void main(String[] args) {
// TeacherInfoFrame teacherinfoframe = new TeacherInfoFrame();
// }
JLabel lblTeacher = new JLabel();
JScrollPane jScrollPane1 = new JScrollPane();
JTable tblTeacher = new JTable();
JButton btnNew = new JButton();
JButton btnEdit = new JButton();
JButton btnDelete = new JButton();
JButton btnCancel = new JButton();
public void btnCancel_actionPerformed(ActionEvent e) {
this.dispose();
}
public void btnNew_actionPerformed(ActionEvent e) {
AddTeacherFrame f = new AddTeacherFrame();
f.setSize(400, 400);
//显示弹出窗口的位置,现在在显示屏的中间
f.setLocation(300, 150);
f.setModal(true);
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
f.setModal(true);
f.setVisible(true);
fillTable();
}
private int QueryTeacher(String teacherId) {
DBManager db = new DBManager();
String sql = "select * from T_CLASSINFO where teacherId='" + teacherId +
"'";
ResultSet rs = db.ExecuteQuery(sql);
try {
if (rs.next()) {
return 0;
}
} catch (SQLException ex) {
ex.printStackTrace();
}
return 1;
}
public void btnDelete_actionPerformed(ActionEvent e) {
int x = this.tblTeacher.getSelectedRow();
if (x < 0) {
JOptionPane.showMessageDialog(this, "请选择您要删除的行");
return;
}
int quesn = JOptionPane.showConfirmDialog(this, "是否删除", "确认",
JOptionPane.YES_NO_OPTION,
JOptionPane.WARNING_MESSAGE);
if (quesn == JOptionPane.NO_OPTION) {
return;
}
TableModel tm = this.tblTeacher.getModel();
String id = (String) tm.getValueAt(x, 0);
String sql = "delete from T_TEACHER where teacherId='" + id + "'";
String teacherId = (String)this.tblTeacher.getValueAt(x, 0);
int Result = QueryTeacher(teacherId);
if (Result == 0) {
JOptionPane.showMessageDialog(this, "这位老师还正在教课");
return;
}
DBManager db = new DBManager();
db.ExecuteUpdate(sql);
fillTable();
}
public void btnEdit_actionPerformed(ActionEvent e) {
int x = this.tblTeacher.getSelectedRow();
if (x < 0) {
JOptionPane.showMessageDialog(this, "请选择要修改的行");
return;
}
TableModel tm = this.tblTeacher.getModel();
String ID = (String) tm.getValueAt(x, 0);
String Name = (String) tm.getValueAt(x, 1);
String Phone = (String) tm.getValueAt(x, 2);
String Memo = (String) tm.getValueAt(x, 3);
Teacher t = new Teacher();
t.setTeacherID(ID);
t.setTeacherName(Name);
t.setTeacherPhone(Phone);
t.setTeacherMemo(Memo);
AddTeacherFrame f = new AddTeacherFrame(t);
f.setSize(420, 430);
f.setLocation(300, 150);
f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
f.setModal(true);
f.setVisible(true);
fillTable();
}
}
class TeacherInfoFrame_btnEdit_actionAdapter implements ActionListener {
private TeacherInfoFrame adaptee;
TeacherInfoFrame_btnEdit_actionAdapter(TeacherInfoFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnEdit_actionPerformed(e);
}
}
class TeacherInfoFrame_btnDelete_actionAdapter implements ActionListener {
private TeacherInfoFrame adaptee;
TeacherInfoFrame_btnDelete_actionAdapter(TeacherInfoFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnDelete_actionPerformed(e);
}
}
class TeacherInfoFrame_btnNew_actionAdapter implements ActionListener {
private TeacherInfoFrame adaptee;
TeacherInfoFrame_btnNew_actionAdapter(TeacherInfoFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnNew_actionPerformed(e);
}
}
class TeacherInfoFrame_btnCancel_actionAdapter implements ActionListener {
private TeacherInfoFrame adaptee;
TeacherInfoFrame_btnCancel_actionAdapter(TeacherInfoFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.btnCancel_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -