版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_40788630/article/details/83243312
主界面和上一篇博客大致相同,(编写过程点击上一篇博客),
效果如下:
代码如下
package course;
import grade.GIndex;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowFocusListener;
import java.awt.event.WindowListener;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import student.SIndex;
import dao.CourseManager;
import dao.GradeManager;
import dao.StudentManager;
public class CIndex extends Frame implements ActionListener{
private Panel p1,p2,p3,p4;
private Menu menu1,menu2;
private MenuItem sitem1; //菜单项“学生信息”
private MenuItem gitem1; //菜单项“成绩信息”
private MenuBar bar;
private Button btn1,addbtn,upbtn,delbtn;
private Label lab;
private TextField tf;
private JScrollPane jsp;
private CourseManager sm;
private JTable jtab;
private JOptionPane jop;
public void menuCreate() {
bar = new MenuBar();
menu1 = new Menu("学生信息");
menu2 = new Menu("成绩信息");
sitem1 = new MenuItem("学生信息");
sitem1.addActionListener(this);
menu1.add(sitem1);
gitem1 = new MenuItem("成绩信息");
gitem1.addActionListener(this);
menu2.add(gitem1);
bar.add(menu1);
bar.add(menu2);
this.setMenuBar(bar);
}
public CIndex() {
this.setTitle("课程管理");
p1 = new Panel();
p1.setLayout(new BorderLayout());
p2 = new Panel();
p3 = new Panel();
p4 = new Panel();
menuCreate();
p1.add(p2, BorderLayout.NORTH);
lab = new Label("请输入性别:");
tf = new TextField(8);
btn1 = new Button("开始查询");
btn1.addActionListener(this);
p3.add(lab);
p3.add(tf);
p3.add(btn1);
p1.add(p3, BorderLayout.SOUTH);
this.add(p1, BorderLayout.NORTH);
sm = new CourseManager();
String sql = "select * from student where 0=?";
String[] param = new String[] {"0"};
sm.addStudent(sql, param);
jtab = new JTable(sm);
jtab.setRowHeight(30);
jsp = new JScrollPane(jtab);
this.add(jsp,BorderLayout.CENTER);
addbtn = new Button("添加");
upbtn = new Button("修改");
delbtn = new Button("删除");
addbtn.addActionListener(this);
upbtn.addActionListener(this);
delbtn.addActionListener(this);
p4.add(addbtn);
p4.add(upbtn);
p4.add(delbtn);
this.add(p4, BorderLayout.SOUTH);
Toolkit tk = Toolkit.getDefaultToolkit();
Dimension dim = tk.getScreenSize();
this.setSize(1000, tk.getScreenSize().height-200);
this.setLocationRelativeTo(null);
this.addWindowListener(new WindowListener() {
@Override
public void windowClosing(WindowEvent w) {
w.getWindow().setVisible(false);
((Frame) w.getComponent()).dispose();
System.exit(0);
}
@Override
public void windowOpened(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowIconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeiconified(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowDeactivated(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowClosed(WindowEvent e) {
// TODO Auto-generated method stub
}
@Override
public void windowActivated(WindowEvent e) {
// TODO Auto-generated method stub
}
});
this.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==sitem1) {
SIndex sx = new SIndex();
sx.setVisible(true);
this.setVisible(false);
}
if(e.getSource()==gitem1) {
GIndex gx = new GIndex();
gx.setVisible(true);
this.setVisible(false);
}
if(e.getSource()==btn1) {
String jtf = tf.getText().trim();
if(jtf.equals("")) {
String sql = "select * from student where 1=?";
String[] param = new String[] {"1"};
sm = new CourseManager();
sm.addStudent(sql, param);
jtab.setModel(sm);
}else {
String sql = "select * from student where ssex=?";
String[] param = new String[] {jtf};
sm = new CourseManager();
sm.addStudent(sql, param);
jtab.setModel(sm);
}
}else if(e.getSource()==addbtn) {
Cadd add = new Cadd(this,"添加课程信息",true);
sm = new CourseManager();
String sql = "select * from student where 1=?";
String[] param = new String[] {"1"};
sm.addStudent(sql, param);
jtab.setModel(sm);
}else if(e.getSource()==upbtn){
int rowNo = this.jtab.getSelectedRow();
if(rowNo == -1) {
jop.showMessageDialog(this,"请选择修改项");
return;
}else{
Cupd add = new Cupd(this,"修改课程信息",true,sm,rowNo);
sm = new CourseManager();
String sql = "select * from student where 1=?";
String[] param = new String[] {"1"};
sm.addStudent(sql, param);
jtab.setModel(sm);
}
}else if(e.getSource()==delbtn){
int rowNo = this.jtab.getSelectedRow();
if(rowNo == -1) {
jop.showMessageDialog(this,"请选择删除项");
return;
}else{
String sql = "delete from student where sid=?";
String sid = (String)this.jtab.getValueAt(rowNo, 0);
String[] param = new String[] {sid};
StudentManager sm1=new StudentManager();
sm1.updateStudent(sql, param);
String sql3 = "delete from student where gsid=?";
String[] param1 = new String[] {sid};
GradeManager gm=new GradeManager();
gm.updateGrade(sql3, param1);
sm = new CourseManager();
String sql2 = "select * from student where 1=?";
String[] param2 = new String[] {"1"};
sm.addStudent(sql2, param2);
jtab.setModel(sm);
}
}
}
public static void main(String[] args) {
CIndex cIndex =new CIndex();
}
}