Selstu 学生查询界面; JPanel pCenter;
CardLayout card=null; JLabel label=null;
JMenuBar mb=new JMenuBar();//菜单栏 JMenu m1=new JMenu(\学生管理\
JMenuItem add1=new JMenuItem(\ \
JMenuItem updata1=new JMenuItem(\ \JMenuItem delete1=new JMenuItem(\ \JMenu m2=new JMenu(\课程管理\
JMenuItem add2=new JMenuItem(\ \
JMenuItem updata2=new JMenuItem(\ \JMenuItem delete2=new JMenuItem(\ \JMenu m3=new JMenu(\选课管理\
JMenuItem add3=new JMenuItem(\ \
JMenuItem updata3=new JMenuItem(\ \JMenuItem delete3=new JMenuItem(\ \JMenu m4=new JMenu(\查询管理\
JMenuItem 学生查询=new JMenuItem(\查询信息 \JMenuItem m5=new JMenuItem(\系统退出\Font t=new Font (\public Menu (){ this.setTitle(\学生选课管理系统\ try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());} catch(Exception e){System.err.println(\不能设置外观: \ //组合菜单 addMenu1(); addMenu2(); addMenu3(); addMenu4(); addJMenuBar(); setJMenuBar(mb); label=new JLabel(\选课管理系统\ label.setFont(new Font(\宋体\ label.setHorizontalTextPosition(SwingConstants.CENTER); label.setForeground(Color.red); //点击事件 add1.addActionListener(this); updata1.addActionListener(this); delete1.addActionListener(this); m5.addActionListener(this); add2.addActionListener(this); delete2.addActionListener(this); updata2.addActionListener(this);
add3.addActionListener(this); delete3.addActionListener(this); updata3.addActionListener(this); 学生查询.addActionListener(this); card=new CardLayout(); pCenter=new JPanel(); pCenter.setLayout(card);
增加学生界面=new Addstu(); 修改学生界面=new Updatastu(); 删除学生界面=new Delstu(); 增加课程界面=new AddC(); 删除课程界面=new DelC(); 修改课程界面=new UpdateC(); 增加选课界面=new AddSC(); 删除选课界面=new DelSC(); 修改选课界面=new UpdateSC(); 学生查询界面=new Selstu();
pCenter.add(\欢迎界面\ pCenter.add(\增加学生界面\增加学生界面); pCenter.add(\修改学生界面\修改学生界面); pCenter.add(\删除学生界面\删除学生界面); pCenter.add(\增加课程界面\增加课程界面); pCenter.add(\删除课程界面\删除课程界面); pCenter.add(\修改课程界面\修改课程界面); pCenter.add(\增加选课界面\增加选课界面); pCenter.add(\删除选课界面\删除选课界面); pCenter.add(\修改选课界面\修改选课界面); pCenter.add(\学生查询界面\学生查询界面); add(pCenter,BorderLayout.CENTER); validate(); setVisible(true); setBounds(400,150,400,280); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
addWindowListener(new WindowAdapter(){//关闭程序时的操作 public void windowClosing(WindowEvent e){System.exit(0);} }); validate();}
private void addJMenuBar() { mb.add(m1);mb.add(m2);mb.add(m3);mb.add(m4);mb.add(m5);} private void addMenu4() { m4.add(学生查询);m4.setFont(t);} private void addMenu3() { m3.add(add3);m3.add(updata3);m3.add(delete3);m3.setFont(t); } private void addMenu2() {//将菜单加入到菜单栏中 m2.add(add2);m2.add(updata2);m2.add(delete2);m2.setFont(t); }
private void addMenu1() { m1.add(add1);m1.add(updata1);m1.add(delete1);m1.setFont(t); } public void actionPerformed(ActionEvent e){ Object obj=e.getSource(); if(obj==m5){System.exit(0);} else{if(obj==add1){card.show(pCenter,\增加学生界面\ else{if(obj==updata1){ card.show(pCenter,\修改学生界面\ else{if(obj==delete1){ card.show(pCenter, \删除学生界面\ else{if(obj==add2){ card.show(pCenter, \增加课程界面\ else{if(obj==delete2){ card.show(pCenter, \删除课程界面\ else{if(obj==updata2){ card.show(pCenter, \修改课程界面\ else{if(obj==add3){ card.show(pCenter, \增加选课界面\ else{if(obj==delete3){ card.show(pCenter, \删除选课界面\ else{if(obj==updata3){ card.show(pCenter, \修改选课界面\ else{if(obj==学生查询){ card.show(pCenter, \学生查询界面\ }}}}}}}}}}}} public static void main(String[] args) {new Menu();}} 效果图:
添加界面:AddC.java/AddSC.java/Addstu.java
添加数据时,若遇到必须信息未填写、不能重复的信息在数据库中已存在,都会提示无法添加及其错误原因。
import java.awt.*; import javax.swing.*; import java.sql.*; import java.awt.event.*;
public class AddC extends JPanel implements ActionListener{
JTextField 课号,课名; JButton 录入;
public AddC(){
try
{UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exception e){System.err.println(\不能设置外观: \+e);}
课号=new JTextField(12); 课名=new JTextField(12); 录入=new JButton(\录入\); 录入.addActionListener(this);
Box box1=Box.createHorizontalBox();//横放box Box box2=Box.createHorizontalBox(); Box box3=Box.createHorizontalBox(); Box box4=Box.createHorizontalBox(); box1.add(new JLabel(\课号:\)); box1.add(课号);
box2.add(new JLabel(\课名:\)); box2.add(课名); box4.add(录入);
Box boxH=Box.createVerticalBox();//竖放box boxH.add(box1); boxH.add(box2); boxH.add(box3); boxH.add(box4);
boxH.add(Box.createVerticalGlue()); JPanel messPanel=new JPanel(); messPanel.add(boxH);
setLayout(new BorderLayout()); add(messPanel,BorderLayout.CENTER); validate();}
效果图:
添加界面:UpdateC.java/UpdateSC.java /Updatestu.java
先查找你想要修改的项目,若修改的信息包括号码(学号、课号),则会进行查询,如果修改后的号码已存在,以及修改后必须的信息变成空都会提示无法修改和其错误原因。此外,若修改C表或则S表,会连同SC表中对应的信息一起修改。
import java.awt.*; import java.awt.event.*;
相关推荐: