班级管理系统.docx
- 文档编号:8253854
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:28
- 大小:281.66KB
班级管理系统.docx
《班级管理系统.docx》由会员分享,可在线阅读,更多相关《班级管理系统.docx(28页珍藏版)》请在冰豆网上搜索。
班级管理系统
JAVA期末大作业
实验课程:
《Java语言程序设计》
学生姓名:
学号:
专业班级:
2012年5月24日
实验截图:
一共有六个类使用时注意!
!
!
ClassManager.java
importjava.awt.*;
importjavax.swing.*;
importjava.awt.event.*;
importjava.io.*;
importjava.util.Hashtable;
publicclassClassManagerextendsJFrameimplementsActionListener{
ClassSituation录入信息;
Delete删除信息;
Inquest查询信息;
ModifySituation修改信息;
JMenuBarmenubar;
JMenumenu;
JMenuItem录入,查询,修改,删除,欢迎;
Containercontainer;
Hashtable信息;
Filefile;
CardLayoutcard;
JLabellabel;
JPanelpanel;
publicClassManager(){
super("班级管理系统");
menubar=newJMenuBar();//菜单选项设置
menu=newJMenu("菜单选项");
录入=newJMenuItem("录入班级基本信息");
查询=newJMenuItem("查询与打印班级基本信息");
修改=newJMenuItem("修改版及基本信息");
删除=newJMenuItem("删除班级基本信息");
欢迎=newJMenuItem("欢迎界面");
menu.add(录入);
menu.add(查询);
menu.add(修改);
menu.add(删除);
menu.add(欢迎);
menubar.add(menu);
setJMenuBar(menubar);
label=newJLabel("班级管理系统");//欢迎标语设置
label.setFont(newFont("黑体",Font.BOLD+Font.ITALIC,50));
label.setHorizontalAlignment(SwingConstants.CENTER);
label.setForeground(Color.red);
信息=newHashtable();//散列表定义
录入.addActionListener(this);//菜单监听
修改.addActionListener(this);
查询.addActionListener(this);
删除.addActionListener(this);
欢迎.addActionListener(this);
card=newCardLayout();//面板设置
container=getContentPane();
panel=newJPanel();
panel.setLayout(card);
file=newFile("基本信息.txt");//写入数据
if(!
file.exists())
{
try{
FileOutputStreamout=newFileOutputStream(file);
ObjectOutputStreamobjectOut=newObjectOutputStream(out);
objectOut.writeObject(信息);
objectOut.close();
out.close();
}
catch(IOExceptione)
{
}
}
录入信息=newClassSituation(file);
修改信息=newModifySituation(file);
查询信息=newInquest(file);
删除信息=newDelete(file);
panel.add("欢迎界面",label);
panel.add("录入界面",录入信息);
panel.add("修改界面",修改信息);
panel.add("删除界面",删除信息);
container.add(panel,BorderLayout.CENTER);
setVisible(true);
setSize(400,400);
}
publicvoidactionPerformed(ActionEvente){
if(e.getSource()==录入){
card.show(panel,"录入界面");
}
elseif(e.getSource()==修改){
card.show(panel,"修改界面");
}
elseif(e.getSource()==查询){
查询信息.setVisible(true);
//card.show(panel,"查询界面");
}
elseif(e.getSource()==删除){
card.show(panel,"删除界面");
}
elseif(e.getSource()==欢迎)
card.show(panel,"欢迎界面");
}
publicstaticvoidmain(Stringargs[]){
ClassManagermanager=newClassManager();
manager.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.*;
ClassSituation.java
publicclassClassSituationextendsJPanelimplementsActionListener
{
Hashtable基本信息表;
JTextField班号,班主任,所属专业,所属学院,人数;
ImageIcon照片;
JLabel照片label;
ClassName班级;
ButtonGroupgroup;
JButton录入,重置;
FileInputStreamin1;
ObjectInputStreamin2;
FileOutputStreamout1;
ObjectOutputStreamout2;
Filefile=null;
publicClassSituation(Filefile)
{
this.file=file;
照片=newImageIcon("image\\image1.jpg");
照片label=newJLabel(照片);
班号=newJTextField(10);
班主任=newJTextField(10);
所属专业=newJTextField(10);
所属学院=newJTextField(10);
人数=newJTextField(10);
录入=newJButton("录入");
重置=newJButton("重置");
录入.addActionListener(this);
重置.addActionListener(this);
Boxbox1=Box.createHorizontalBox();
box1.add(newJLabel("班号:
",JLabel.CENTER));
box1.add(班号);
Boxbox2=Box.createHorizontalBox();
box2.add(newJLabel("班主任:
",JLabel.CENTER));
box2.add(班主任);
Boxbox4=Box.createHorizontalBox();
box4.add(newJLabel("所属学院:
",JLabel.CENTER));
box4.add(所属学院);
Boxbox5=Box.createHorizontalBox();
box5.add(newJLabel("所属专业:
",JLabel.CENTER));
box5.add(所属专业);
Boxbox6=Box.createHorizontalBox();
box6.add(newJLabel("人数:
",JLabel.CENTER));
box6.add(人数);
BoxboxH=Box.createVerticalBox();
boxH.add(box1);
boxH.add(box2);
boxH.add(box4);
boxH.add(box5);
boxH.add(box6);
boxH.add(Box.createVerticalGlue());
JPanelpCenter=newJPanel();//选框加入设置
pCenter.add(boxH);
setLayout(newBorderLayout());
add(pCenter,BorderLayout.CENTER);
JPanelpanel3=newJPanel();//照片加入设置
add(panel3,BorderLayout.NORTH);
panel3.add(照片label);
JPanelpSouth=newJPanel();//按钮加入设置
pSouth.add(录入);
pSouth.add(重置);
add(pSouth,BorderLayout.SOUTH);
validate();
}
publicvoidactionPerformed(ActionEvente)
{
if(e.getSource()==录入)
{
Stringnumber="";
number=班号.getText();
if(number.length()>0)
{
try{
in1=newFileInputStream(file);
in2=newObjectInputStream(in1);
基本信息表=(Hashtable)in2.readObject();
in1.close();
in2.close();
}
catch(Exceptionee)
{
}
if(基本信息表.containsKey(number))
{
Stringwarning="该班级基本信息已存在,请到修改页面修改!
";
JOptionPane.showMessageDialog(this,warning,"警告",JOptionPane.WARNING_MESSAGE);
班号.setText(null);
班主任.setText(null);
所属学院.setText(null);
所属专业.setText(null);
人数.setText(null);
}
else{
Stringname=班主任.getText();
Stringdiscipling=所属专业.getText();
Stringgrade=所属学院.getText();
Stringtotal=人数.getText();
班级=newClassName();
班级.setNumber(number);
班级.setName(name);
班级.setDiscipling(discipling);
班级.setGrade(grade);
班级.setTotal(total);
JOptionPane.showMessageDialog(this,"录入成功!
","",JOptionPane.OK_OPTION);
try{
out1=newFileOutputStream(file);
out2=newObjectOutputStream(out1);
基本信息表.put(number,班级);
out2.writeObject(基本信息表);
out2.close();
out1.close();
班号.setText(null);
班主任.setText(null);
所属学院.setText(null);
所属专业.setText(null);
人数.setText(null);
}
catch(Exceptionee)
{
System.out.println(ee);
}
}
}
else
{
JOptionPane.showMessageDialog(this,"请输入学号!
","警告",JOptionPane.WARNING_MESSAGE);
}
}
elseif(e.getSource()==重置)
{
班号.setText(null);
班主任.setText(null);
所属专业.setText(null);
所属学院.setText(null);
人数.setText(null);
}
}
}
Inquest.java
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.*;
publicclassInquestextendsJDialogimplementsActionListener
{
Hashtable基本信息表=null;
JTextField班号,班主任,所属专业,所属学院,人数;
JButton查询;
FileInputStreamin1=null;
ObjectInputStreamin2=null;
Filefile=null;
publicInquest(Filefile)
{
this.file=file;
班号=newJTextField(10);
查询=newJButton("查询");
班号.addActionListener(this);
查询.addActionListener(this);
班主任=newJTextField(10);
班主任.setEditable(false);
所属专业=newJTextField(10);
所属专业.setEditable(false);
所属学院=newJTextField(10);
所属学院.setEditable(false);
人数=newJTextField(10);
人数.setEditable(false);
Boxbox1=Box.createHorizontalBox();
box1.add(newJLabel("输入要查询的班号:
",JLabel.CENTER));
box1.add(班号);
box1.add(查询);
Boxbox2=Box.createHorizontalBox();
box2.add(newJLabel("班主任:
",JLabel.CENTER));
box2.add(班主任);
Boxbox4=Box.createHorizontalBox();
box4.add(newJLabel("所属专业:
",JLabel.CENTER));
box4.add(所属专业);
Boxbox5=Box.createHorizontalBox();
box5.add(newJLabel("所属学院:
",JLabel.CENTER));
box5.add(所属学院);
Boxbox6=Box.createHorizontalBox();
box6.add(newJLabel("人数:
",JLabel.CENTER));
box6.add(人数);
Boxbox0=Box.createVerticalBox();
box0.add(box1);
box0.add(box2);
box0.add(box5);
box0.add(box4);
box0.add(box6);
box0.add(Box.createVerticalGlue());
JPanelpanel=newJPanel();
panel.add(box0);
Containercon=getContentPane();
con.add(panel,BorderLayout.CENTER);
setVisible(false);
setBounds(100,200,360,270);
}
publicvoidactionPerformed(ActionEvente)
{
班主任.setText(null);
所属专业.setText(null);
所属学院.setText(null);
人数.setText(null);
if(e.getSource()==查询||e.getSource()==班号)
{
Stringnumber="";
number=班号.getText();
if(number.length()>0)
{
try{
in1=newFileInputStream(file);
in2=newObjectInputStream(in1);
基本信息表=(Hashtable)in2.readObject();
in1.close();
in2.close();
}
catch(Exceptionee)
{
}
if(基本信息表.containsKey(number))
{
ClassNamename=(ClassName)基本信息表.get(number);
班主任.setText(name.getName());
所属专业.setText(name.getDisciping());
所属学院.setText(name.getGrade());
人数.setText(name.getTotal());
}
else
{
JOptionPane.showMessageDialog(this,"该班级不存在!
","警告",JOptionPane.WARNING_MESSAGE);
班号.setText(null);
}
}
}
}
}
ModifySituation.java
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.*;
publicclassModifySituationextendsJPanelimplementsActionListener
{
Hashtable基本信息表=null;
JTextField班号,班主任,所属专业,所属学院,人数;
JButton查找,修改;
FileInputStreamin1;
ObjectInputStreamin2;
FileOutputStreamout1;
ObjectOutputStreamout2;
Filefile;
publicModifySituation(Filefile)
{
this.file=file;
班号=newJTextField(10);
班主任=newJTextField(10);
所属专业=newJTextField(10);
所属学院=newJTextField(10);
人数=newJTextField(10);
查找=newJButton("查找");
修改=newJButton("修改");
班号.addActionListener(this);
查找.addActionListener(this);
修改.addActionListener(this);
Boxbox1=Box.createHorizontalBox();
box1.add(newJLabel("输入要修改的班号:
",JLabel.CENTER));
box1.add(班号);
box1.add(查找);
Boxbox2=Box.createHorizontalBox();
box2.add(newJLabel("班主任:
",JLabel.CENTER));
box2.add(班主任);
Boxbox4=Box.createHorizontalBox();
box4.add(newJLabel("所属专业:
",JLabel.CENTER));
box4.add(所属专业);
Boxbox5=Box.createHorizontalBox();
box5.add(newJLabel("所属学院:
",JLabel.CENTER));
box5.add(所属学院);
Boxbox6=Box.createHorizontalBox();
box6.add(newJLabel("人数:
",JLabel.CENTER));
box6.add(人数);
BoxboxH=Box.createVerticalBox();
boxH.add(box1);
boxH.add(box2);
boxH.add(box4);
boxH.add(box5);
boxH.add(box6);
boxH.add(Box.createVerticalGlue());
JPaneljpan
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 班级 管理 系统