简单学生信息管理系统Swing版.docx
- 文档编号:1178977
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:15
- 大小:164.48KB
简单学生信息管理系统Swing版.docx
《简单学生信息管理系统Swing版.docx》由会员分享,可在线阅读,更多相关《简单学生信息管理系统Swing版.docx(15页珍藏版)》请在冰豆网上搜索。
简单学生信息管理系统Swing版
实验七综合性程序设计
——简单学生信息管理系统(Swing版)
实验日期_____年_____月_____日班级:
学号:
姓名:
成绩:
一、实验目的:
(1)熟悉Swing的常用组件,掌握java的事件处理机制。
(2)综合运用Swing的IO的知识。
二、实验内容:
编写能够满足如下条件的程序(分两次4个课时完成)。
(1)利用文件来存储用户名、密码,实现一个登录验证的程序,验证用户输入的用户名、密码是否正确,正确显示学生信息浏览主窗口,不正确弹出对话框提示错误,并要求用户重新输入。
(2)在主窗口上有一个菜单,菜单项有“新建”、“浏览”。
(3)在“新建学生信息”窗口中,输入实验VI学生类中的ID、NAME、MATH、JAVA信息。
单击保存按钮,用文件存储学生信息。
(4)在“浏览学生信息”窗口中,用前一个、后一个浏览所有学生信息。
(5)(选做)增加修改按钮,修改学生信息,并保存在文件中;增加删除按钮,删除当前学生信息。
源程序:
package学生信息管理系统;
importjava.io.*;
importjava.util.*;
importjavax.swing.*;
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.event.*;
publicclassStudentextendsJFrame{
JMenuBarjmb;
JMenujm;
JMenuItemjmi1,jmi2;
JPaneljp1,jp2,jp3;
JButtonjb1,jb2,jb3,jb4,enter;
JLabeljl1,jl2,jl3,jl4,jl5,user,password;
JTextFieldjtf1,jtf2,jtf3,jtf4,jtf5;
finalContainerc=getContentPane();;
publicStudent(){
setVisible(true);
jp1=newJPanel();
jp2=newJPanel();
jp3=newJPanel();
jl1=newJLabel("ID");
jl2=newJLabel("NAME");
jl3=newJLabel("OS");
jl4=newJLabel("MATH");
jl5=newJLabel("JAVA");
user=newJLabel("用户名");
password=newJLabel("密码");
jtf1=newJTextField(15);
jtf2=newJTextField(15);
jtf3=newJTextField(15);
jtf4=newJTextField(15);
jtf5=newJTextField(15);
jb1=newJButton("保存");
jb2=newJButton("重置");
jb3=newJButton("前一个");
jb4=newJButton("后一个");
enter=newJButton("登陆");
jmi1=newJMenuItem("新建");
jmi2=newJMenuItem("浏览");
jm=newJMenu("操作");
}
voidlunch(){
c.setLayout(newGridLayout(3,1));
c.setVisible(true);
jp1.add(user);
jp1.add(jtf1);
jp2.add(password);
jp2.add(jtf2);
jp3.add(enter);
c.add(jp1);
c.add(jp2);
c.add(jp3);
setSize(400,300);
enter.addActionListener(newLis());
jmi1.addActionListener(newNewListener());
jb1.addActionListener(newSaveListener());
jmi2.addActionListener(newOverLook());
jb2.addActionListener(newResetListener());
jb3.addActionListener(newPreListener());
jb4.addActionListener(newNextListener());
}
classLisimplementsActionListener{
@Override
publicvoidactionPerformed(ActionEvente){
Strings1=jtf1.getText();
Strings2=jtf2.getText();
if(s1.equals("Mike")&&s2.equals("526")){
JOptionPane.showMessageDialog(null,"欢迎进入","提示!
",JOptionPane.INFORMATION_MESSAGE);
c.removeAll();
jmb=newJMenuBar();
setJMenuBar(jmb);
jmb.add(jm);
jm.add(jmi1);
jm.addSeparator();
jm.add(jmi2);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
else{
JOptionPane.showMessageDialog(null,"用户名或密码错误,请重新出入","错误提示!
",JOptionPane.ERROR_MESSAGE);
}
}
}
classNewListenerimplementsActionListener{
@Override
publicvoidactionPerformed(ActionEvente){
c.removeAll();
c.setLayout(newGridLayout(1,1));
GridLayoutgl=newGridLayout(6,2,0,0);
JPanelpanel=newJPanel();
panel.setLayout(gl);
panel.add(jl1);
panel.add(jtf1);
panel.add(jl2);
panel.add(jtf2);
panel.add(jl3);
panel.add(jtf3);
panel.add(jl4);
panel.add(jtf4);
panel.add(jl5);
panel.add(jtf5);
panel.add(jb1);
panel.add(jb2);
c.add(panel);
setVisible(true);
}
}
classOverLookimplementsActionListener{
@Override
publicvoidactionPerformed(ActionEvente){
c.removeAll();
c.setLayout(newGridLayout(1,1));
GridLayoutgl=newGridLayout(6,2,0,0);
JPanelpanel=newJPanel();
panel.setLayout(gl);
BufferedReaderin=null;
Stringid=null,name=null,os=null,math=null,java=null;
try{
in=newBufferedReader(newFileReader(newFile("f:
\\1.txt")));
id=in.readLine();
name=in.readLine();
os=in.readLine();
math=in.readLine();
java=in.readLine();
}catch(Exceptione1){
System.out.println("ERROR");
}
jtf1.setText(id);
jtf2.setText(name);
jtf3.setText(os);
jtf4.setText(math);
jtf5.setText(java);
panel.add(jl1);
panel.add(jtf1);
panel.add(jl2);
panel.add(jtf2);
panel.add(jl3);
panel.add(jtf3);
panel.add(jl4);
panel.add(jtf4);
panel.add(jl5);
panel.add(jtf5);
panel.add(jb3);
panel.add(jb4);
c.add(panel);
setVisible(true);
}
}
classSaveListenerimplementsActionListener{
@Override
publicvoidactionPerformed(ActionEvente){
Filetemp=null;
PrintStreamp=null;
try{
if(newFile("f:
\\"+jtf1.getText()+".txt").createNewFile()){
temp=newFile("f:
\\"+jtf1.getText()+".txt");
}else{
System.exit(0);
}
p=newPrintStream(temp);
p.println(jtf1.getText());
p.println(jtf2.getText());
p.println(jtf3.getText());
p.println(jtf4.getText());
p.println(jtf5.getText());
}catch(IOExceptionex){
System.out.println("ERROR");
}
p.c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简单 学生 信息管理 系统 Swing