Java实训使用IOl流+图形界面GUI完成学生管理系统

由于尚未学到数据库,无法保存学生及老师信息,所以这里用到了IO流,使用IO流中的ObjectOutputStream和ObjectInputStream对象流,完成对象的序列化和反序列化。

实训要求

使用Java图形用户界面内容、动作事件处理和文件I/O流操作,设计并开发“学生成绩管理系统”功能,运行系统,首先进入登录界面,显示“欢迎使用学生成绩管理系统”,输入正确的用户名和密码、选择身份后点击“登录”按钮后进入相应界面

 

教师身份进入后参考界面如图2所示,教师界面提供功能:输入成绩、查询成绩、修改密码和退出等操作,在教师界面选择需要的服务后,进入相应的界面进行操作。 

 

学生身份进入后参考界面如图所示,学生可以进行查询成绩、修改密码和退出等操作,在教师界面选择需要的服务后,进入相应的界面进行操作 

 

功能要求

  1. 能够完成系统登录界面的正确显示,当在登录界面输入正确的用户名和密码时,点击“登录”按钮可以进入相应的界面。当用户名或密码输入为空白时,弹出对话框提示用户输入;用户名或密码输入错误时,弹出对话框提示错误。
  2. 在登录界面单击“取消”按钮时,清空用户名和密码信息;当单击关闭按钮时,退出系统。
  3. 当教师选择“输入成绩”按钮时,进入“输入成绩”界面。教师对所有学生的成绩进行输入,输入成绩应大于等于0并小于等于100,否则提示出错(我忘记判断了)。
  4. 当教师选择“查询成绩”按钮时,进入“查询成绩”界面,显示所有学生的成绩。
  5. 当学生选择“查询成绩”按钮时,弹出学生成绩信息。
  6. 在修改密码界面时,必须有旧密码、新密码、确认密码等密码框,当输入的新密码和确认密码不一致时,弹出对话框进行提示。
  7. 至少创建1个教师对象,5个学生对象。
  8. 登录时判断用户名和密码是否正确,必须和文件中存储的对象信息进行比较。
  9. 教师输入成绩后,必须将文件中学生的成绩进行实时更新。
  10. 退出系统,再次进入时,密码信息必须进行更新。

这里我就不再进行分析了,因为我也不太喜欢看别人的分析,直接复制程序,如果运行出来结果,然后自己去研究。

 

我就直接上代码了,共9个类

Account账户类

package com.clic.Expetion.Work.practiCaltraining;

import java.io.Serializable;

public class Account implements Serializable {
    private String account;//账号
    private String passWord;//密码
    private String name;//姓名
    private String identity;//身份
    private double score;//成绩

    public Account() {
    }

    public Account(String account, String passWord,String name, String identity) {
        this.account = account;
        this.passWord = passWord;
        this.name=name;
        this.identity = identity;
    }

    public Account(String account, String passWord,String name, String identity, float score) {
        this.account = account;
        this.passWord = passWord;
        this.name=name;
        this.identity = identity;
        this.score = score;
    }

    public String getAccount() {
        return account;
    }

    public void setAccount(String account) {
        this.account = account;
    }

    public String getPassWord() {
        return passWord;
    }

    public void setPassWord(String passWord) {
        this.passWord = passWord;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getIdentity() {
        return identity;
    }

    public void setIdentity(String identity) {
        this.identity = identity;
    }

    public double getScore() {
        return score;
    }

    public void setScore(float score) {
        this.score = score;
    }
}

主界面

package com.clic.Expetion.Work.practiCaltraining;
import com.clic.Expetion.Work.practiCaltraining.Account;
import com.clic.Expetion.Work.practiCaltraining.StudentInterface;
import com.clic.Expetion.Work.practiCaltraining.TeacherInterface;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;
import javax.swing.*;
class myFrame {
    JFrame jFrame=new JFrame("登录");
    JLabel title=new JLabel("欢迎学生成绩管理系统");
    JLabel account=new JLabel("用户名:");
    JTextField number=new JTextField(15);
    JLabel passWord=new JLabel("密 码:");
    JPasswordField code=new JPasswordField(15);
    JButton register =new JButton("登录");
    JButton cancel=new JButton("取消");
    JRadioButton student=new JRadioButton("学生",true);
    JRadioButton teacher=new JRadioButton("教师");
    ButtonGroup buttonGroup=new ButtonGroup();//组
    JDialog jDialog;
    void init(){//组装
         int i=0;
        title.setFont(new Font("黑体",Font.BOLD,35));//设置字体以及大小
        account.setFont(new Font("楷体",Font.PLAIN,20));
        passWord.setFont(new Font("楷体",Font.PLAIN,20));
        account.setForeground(Color.RED);//设置标签字体颜色
        passWord.setForeground(Color.RED);
        JPanel jPanel1=new JPanel();
        buttonGroup.add(student);//将选项添加到ButtonGroup,只能单选
        buttonGroup.add(teacher);
        JPanel jPanel2=new JPanel();//创建5个JPanel对象
        JPanel jPanel3=new JPanel();
        JPanel jPanel4=new JPanel();
        JPanel jPanel5=new JPanel();
        jPanel1.add(title);//向JPanel对象中添加组件
        jPanel2.add(account);
        jPanel2.add(number);
        jPanel3.add(passWord);
        jPanel3.add(code);
        jPanel4.add(student);
        jPanel4.add(teacher);
        //创建账号密码
        Account[] accounts=new Account[6];
        accounts[0] =new Account("111","111","张三","学生",80);
        accounts[1] =new Account("222","222","李四","学生",78);
        accounts[2] =new Account("333","333","王五","学生",90);
        accounts[3] =new Account("444","444","王二","学生",100);
        accounts[4] =new Account("555","555","赵六","学生",60);
        accounts[5] =new Account("666","666","小黑","教师");
        File file=new File("D://桌面//data");
        ObjectInputStream ois=null;
        ObjectOutputStream oos=null;
        if (file.exists()){
            try {
                ois=new ObjectInputStream(new FileInputStream(file));
            } catch (IOException e) {
                e.printStackTrace();
            }
            try {
                while((accounts[i]= (Account) ois.readObject())!=null){
                    i++;
                    if(i==6){
                        break;
                    }
                }
                ois.close();
            } catch (EOFException e) {
               // e.printStackTrace();
            } catch (ClassNotFoundException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }else {
            try {
                oos=new ObjectOutputStream(new FileOutputStream(file));
                oos.writeObject(accounts[0]);
                oos.writeObject(accounts[1]);
                oos.writeObject(accounts[2]);
                oos.writeObject(accounts[3]);
                oos.writeObject(accounts[4]);
                oos.writeObject(accounts[5]);
                oos.writeObject(null);
                oos.flush();
                oos.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        //为取消添加监听事件
        cancel.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                number.setText("");
                code.setText("");
            }
        });

        //为登录添加监听事件
        register.addActionListener(new ActionListener() {
            @Override

            public void actionPerformed(ActionEvent e) {//点击登陆按钮
                int i=0;
                if (number.getText().equals("")){//判断是否输入账号
                    JOptionPane.showMessageDialog(jFrame,"请输入账号","错误",JOptionPane.ERROR_MESSAGE);

                }else if (code.getText().equals("")){//判断是否输入密码
                    JOptionPane.showMessageDialog(jFrame,"请输入密码","错误",JOptionPane.ERROR_MESSAGE);
                }else if (!(student.isSelected()||teacher.isSelected())){
                    JOptionPane.showMessageDialog(jFrame,"请选择您的身份","失败",JOptionPane.QUESTION_MESSAGE);

                }
                for ( i = 0; i <6 ; i++) {
                    if (number.getText().equals(accounts[i].getAccount())&&code.getText().equals(accounts[i].getPassWord())&&accounts[i].getIdentity().equals(student.isSelected()?"学生":"教师")){
                        JOptionPane.showMessageDialog(jFrame,"登陆成功","成功",JOptionPane.PLAIN_MESSAGE);

                        if (teacher.isSelected()){
                            new TeacherInterface().init(accounts,accounts[i]);
                            jFrame.dispose();
                        }else {
                            new StudentInterface().init(accounts,accounts[i]);
                            jFrame.dispose();

                        }
                        break;
                    }
                }
                while (i==6){
                    JOptionPane.showMessageDialog(jFrame,"账号或密码错误","失败",JOptionPane.ERROR_MESSAGE);
                    break;
                }

            }
        });
        jPanel5.add(register);
        jPanel5.add(cancel);
        jFrame.setLayout(new GridLayout(5,1));//设置网格布局管理
        jFrame.add(jPanel1);
        jFrame.add(jPanel2);
        jFrame.add(jPanel3);
        jFrame.add(jPanel4);
        jFrame.add(jPanel5);
        jFrame.setSize(500,350);//设置窗口大小
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        jFrame.setResizable(false);//设置窗体大小不可变
        jFrame.setVisible(true);
    }

}

class mianText {

    public static void main(String[] args) {
        new myFrame().init();
    }

}

学生界面

package com.clic.Expetion.Work.practiCaltraining;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class StudentInterface extends TeacherInterface{
    JFrame jFrame=new JFrame("学生界面");

    public void init(Account[] accounts,Account account){
        jPanel1.add(jLabel);
        jLabel.setText(account.getName()+"同学,欢迎使用考试系统");
        jFrame.add(jPanel1,BorderLayout.NORTH);
        jPanel2.add(jButton1);
        jPanel2.add(jButton2);
        jFrame.add(jPanel2);
        jPanel3.add(new JLabel("                                                        "));
        jPanel3.add(new JLabel("                         "));
        jPanel3.add(jButton3);
        jFrame.add(jPanel3,BorderLayout.SOUTH);
        jFrame.setSize(380,210);//设置窗口大小
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        jFrame.setResizable(false);//设置窗体大小不可变
         jFrame.setVisible(true);
         jButton1.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
                 new OutResults().init(accounts,account);
                 jFrame.dispose();
             }
         });
         jButton2.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
                 new StudentChangePassword().init(accounts,account);
                 jFrame.dispose();
             }
         });
         jButton3.addActionListener(new ActionListener() {
             @Override
             public void actionPerformed(ActionEvent e) {
                 new myFrame().init();
                 jFrame.dispose();
             }
         });

    }

    public static void main(String[] args) {
        //new StudentInterface().init();
    }

}

 

教师界面

package com.clic.Expetion.Work.practiCaltraining;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class TeacherInterface {

    JFrame jFrame=new JFrame("教师界面");
    JLabel jLabel=new JLabel("欢迎使用考试系统");
    JButton jButton1=new JButton("查询成绩");
    JButton jButton2=new JButton("修改密码");
    JButton jButton3=new JButton("退出登录");
    JButton jButton4=new JButton("输入成绩");
    JPanel jPanel1=new JPanel();
    JPanel jPanel2=new JPanel();
    JPanel jPanel3=new JPanel();
    void init(Account[] accounts,Account account){
        jLabel.setText(account.getName()+"老师,欢迎使用考试系统");
        jPanel1.add(jLabel);
        jFrame.add(jPanel1, BorderLayout.NORTH);
        jPanel2.add(jButton4);
        jPanel2.add(jButton1);
        jPanel2.add(jButton2);
        jFrame.add(jPanel2);
        jPanel3.add(new JLabel("                                                        "));
        jPanel3.add(new JLabel("                         "));
        jPanel3.add(jButton3);
        jFrame.add(jPanel3,BorderLayout.SOUTH);
        jFrame.setSize(380,210);//设置窗口大小
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        jFrame.setResizable(false);//设置窗体大小不可变
        jFrame.setVisible(true);
        jButton1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                new TeacherCheckGrades().init(accounts,account);
                jFrame.dispose();
            }
        });
        jButton2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                new TeacherChangePassword().init(accounts,account);
                jFrame.dispose();
            }
        });
        jButton3.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                new myFrame().init();
                jFrame.dispose();
            }
        });
        jButton4.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                new InputResults().init(accounts,account);
                jFrame.dispose();
            }
        });



    }

    public static void main(String[] args) {
        //new TeacherInterface().init();
    }


}

学生修改密码

package com.clic.Expetion.Work.practiCaltraining;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

class StudentChangePassword {
    JFrame jFrame=new JFrame("修改密码");
    JLabel prePassWord=new JLabel("原密码:");
    JLabel newPassWord=new JLabel("新密码:");
    JLabel surePassWord=new JLabel("确认密码:");
    JButton jButton1=new JButton("确认修改");
    JButton jButton2=new JButton("取消");
    JPasswordField prePassWord1=new JPasswordField(10);
    JPasswordField newPassWord2=new JPasswordField(10);
    JPasswordField surePassWord2=new JPasswordField(10);
    JPanel jPanel1=new JPanel();
    JPanel jPanel2=new JPanel();
    JPanel jPanel3=new JPanel();
    JPanel jPanel4=new JPanel();
    ObjectOutputStream oos=null;
   void init(Account[] accounts,Account account){
       try {
           oos=new ObjectOutputStream(new FileOutputStream("D://桌面//data"));
       } catch (IOException e) {
           e.printStackTrace();
       }
       Box vbox = Box.createVerticalBox();
       jButton1.addActionListener(new ActionListener() {
           @Override
           public void actionPerformed(ActionEvent e) {//对修改密码按钮添加动作按钮
               if (!prePassWord1.getText().equals(account.getPassWord())){//如果原密码输入不正确,弹出提示
                   JOptionPane.showMessageDialog(jFrame,"原密码不正确","错误",JOptionPane.ERROR_MESSAGE);
               }else if (!newPassWord2.getText().equals(surePassWord2.getText())){//两次密码输入不同弹出提示
                   JOptionPane.showMessageDialog(jFrame,"两次输入密码不同","错误",JOptionPane.ERROR_MESSAGE);
               }else {//修改成功则重新登录
                   JOptionPane.showMessageDialog(jFrame,"修改成功,重新登录","成功",JOptionPane.PLAIN_MESSAGE);
                   jFrame.dispose();
                   for (int i = 0; i <6 ; i++) {
                       if (accounts[i].getName().equals(account.getName())){
                           accounts[i].setPassWord(newPassWord2.getText());
                           try {
                               oos.writeObject(accounts[i]);
                           } catch (IOException ioException) {
                               ioException.printStackTrace();
                           }
                       }else {
                           try {
                               oos.writeObject(accounts[i]);
                               oos.flush();
                           } catch (IOException ioException) {
                               ioException.printStackTrace();
                           }
                       }

                   }



                   new myFrame().init();
               }
           }
       });
       jPanel1.add(prePassWord);
       jPanel1.add(prePassWord1);
       jPanel2.add(newPassWord);
       jPanel2.add(newPassWord2);
       jPanel3.add(surePassWord);
       jPanel3.add( surePassWord2);
       jPanel4.add(jButton1);
       jPanel4.add(jButton2);
       vbox.add(jPanel1);
       vbox.add(jPanel2);
       vbox.add(jPanel3);
       vbox.add(jPanel4);
       jFrame.setSize(300,200);
       jFrame.setLocationRelativeTo(null);//使窗体居中显示
       //jFrame.setResizable(false);//设置窗体大小不可变
       jFrame.add(vbox);
       jFrame.setVisible(true);

       jButton2.addActionListener(new ActionListener() {
           @Override
           public void actionPerformed(ActionEvent e) {
                   jFrame.dispose();
                   new StudentInterface().init(accounts,account);
           }
       });
   }

    public static void main(String[] args) {
       // new StudentChangePassword().init();
    }
}

 

教师修改密码

package com.clic.Expetion.Work.practiCaltraining;

import javax.swing.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class TeacherChangePassword {
    JFrame jFrame=new JFrame("修改密码");
    JLabel prePassWord=new JLabel("原密码:");
    JLabel newPassWord=new JLabel("新密码:");
    JLabel surePassWord=new JLabel("确认密码:");
    JButton jButton1=new JButton("确认修改");
    JButton jButton2=new JButton("取消");
    JPasswordField prePassWord1=new JPasswordField(10);
    JPasswordField newPassWord2=new JPasswordField(10);
    JPasswordField surePassWord2=new JPasswordField(10);
    JPanel jPanel1=new JPanel();
    JPanel jPanel2=new JPanel();
    JPanel jPanel3=new JPanel();
    JPanel jPanel4=new JPanel();
    ObjectOutputStream oos=null;
    int i=0;
    void init(Account[] accounts, Account account){

        Box vbox = Box.createVerticalBox();
        jPanel1.add(prePassWord);
        jPanel1.add(prePassWord1);
        jPanel2.add(newPassWord);
        jPanel2.add(newPassWord2);
        jPanel3.add(surePassWord);
        jPanel3.add( surePassWord2);
        jPanel4.add(jButton1);
        jPanel4.add(jButton2);
        vbox.add(jPanel1);
        vbox.add(jPanel2);
        vbox.add(jPanel3);
        vbox.add(jPanel4);
        jFrame.setSize(300,200);
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        //jFrame.setResizable(false);//设置窗体大小不可变
        jFrame.add(vbox);
        jFrame.setVisible(true);
        try {
            oos=new ObjectOutputStream(new FileOutputStream("D://桌面//data"));
        } catch (IOException e) {
            e.printStackTrace();
        }
        jButton1.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                   if (!prePassWord1.getText().equals(account.getPassWord())){//如果原密码输入不正确,弹出提示
                    JOptionPane.showMessageDialog(jFrame,"原密码不正确","错误",JOptionPane.ERROR_MESSAGE);
                }else if (newPassWord2.getText().equals("")&&surePassWord2.getText().equals("")){
                       JOptionPane.showMessageDialog(jFrame,"新密码不能为空","错误",JOptionPane.ERROR_MESSAGE);
                   }
                    else if (!newPassWord2.getText().equals(surePassWord2.getText())){//两次密码输入不同弹出提示
                    JOptionPane.showMessageDialog(jFrame,"两次输入密码不同","错误",JOptionPane.ERROR_MESSAGE);
                }else {//修改成功则重新登录
                    JOptionPane.showMessageDialog(jFrame,"修改成功,重新登录","成功",JOptionPane.PLAIN_MESSAGE);
                    jFrame.dispose();
                    for (int i = 0; i <6 ; i++) {
                        if (accounts[i].getName().equals(account.getName())){
                            accounts[i].setPassWord(newPassWord2.getText());
                            try {
                                oos.writeObject(accounts[i]);
                            } catch (IOException ioException) {
                                ioException.printStackTrace();
                            }
                        }else {
                            try {
                                oos.writeObject(accounts[i]);
                                oos.flush();
                                oos.flush();
                            } catch (IOException ioException) {
                                ioException.printStackTrace();
                            }
                        }

                    }
                    new myFrame().init();
                }
            }
        });
        jButton2.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                jFrame.dispose();
                new TeacherInterface().init(accounts,account);
            }
        });
    }

    public static void main(String[] args) {
        //new TeacherChangePassword().init();
    }

}

教师修改成绩

package com.clic.Expetion.Work.practiCaltraining;
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class TeacherCheckGrades {
    JFrame jFrame=new JFrame("查询成绩");
    JLabel jLabel=new JLabel("请输入学生姓名:");
    JLabel jLabel1=new JLabel("学生成绩为:");
    JLabel jLabel2=new JLabel();
    JTextField jTextField=new JTextField(10);
    JButton cancel=new JButton("返回");
    JButton ok=new JButton("确认");
    JPanel jPanel1=new JPanel();
    JPanel jPanel2=new JPanel();
    JPanel jPanel3=new JPanel();
    int i=0;
    void init(Account[] accounts,Account account){
        Box vBox = Box.createVerticalBox();
        jPanel1.add(jLabel);
        jPanel1.add(jTextField);
        jPanel3.add(jLabel1);
        jPanel3.add(jLabel2);
        vBox.add(jPanel1);
        vBox.add(jPanel3);
        jFrame.add(vBox);
        jPanel2.add(ok);
        jPanel2.add(cancel);
        jFrame.setSize(400,300);
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        jFrame.setResizable(false);//设置窗体大小不可变
        jFrame.add(jPanel2, BorderLayout.SOUTH);
        jFrame.setVisible(true);
        ok.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                if (jTextField.getText().equals("")){
                    JOptionPane.showMessageDialog(jFrame,"请输入学生姓名","错误",JOptionPane.ERROR_MESSAGE);
                }
                    for ( i = 0; i <6 ; i++) {
                        if (accounts[i].getName().equals(jTextField.getText())){
                            jLabel2.setText(accounts[i].getScore()+"");
                            break;
                        }
                    }
                    if (i==6){
                        JOptionPane.showMessageDialog(jFrame,"学生信息不存在","错误",JOptionPane.ERROR_MESSAGE);
                    }

                }
        });

        cancel.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                jFrame.dispose();
                new TeacherInterface().init(accounts,account);
            }
        });

    }

    public static void main(String[] args) {

    }

}

 学生查看成绩

package com.clic.Expetion.Work.practiCaltraining;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class OutResults{
    JButton jButton=new JButton("返回");
    JFrame jFrame=new JFrame("查看成绩");
    JLabel jLabel=new JLabel("您的成绩:");
    JLabel score=new JLabel();
    JPanel jPanel=new JPanel();
    void init(Account[] accounts,Account account){
        score.setText(account.getScore()+"");
        jPanel.add(jLabel);
        jPanel.add(score);
        jFrame.add(jPanel);
        jFrame.add(new JPanel().add(jButton), BorderLayout.SOUTH);
        jFrame.setVisible(true);
        jFrame.setSize(380,410);//设置窗口大小
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        jFrame.setResizable(false);//设置窗体大小不可变
        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                jFrame.dispose();
                new StudentInterface().init(accounts,account);
            }
        });
    }
    public static void main(String[] args) {

    }
}

 教师输入成绩

package com.clic.Expetion.Work.practiCaltraining;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.*;

public class InputResults {
    JFrame jFrame=new JFrame("输入成绩");
    JLabel name1=new JLabel("姓  名:");
    JLabel name2=new JLabel("姓  名:");
    JLabel name3=new JLabel("姓  名:");
    JLabel name4=new JLabel("姓  名:");
    JLabel name5=new JLabel("姓  名:");
    JButton jButton=new JButton("返回");
    JButton ok=new JButton("确认");
    JTextField number1=new JTextField(15);
    JTextField number2=new JTextField(15);
    JTextField number3=new JTextField(15);
    JTextField number4=new JTextField(15);
    JTextField number5=new JTextField(15);
    JPanel jPanel1=new JPanel();
    JPanel jPanel2=new JPanel();
    JPanel jPanel3=new JPanel();
    JPanel jPanel4=new JPanel();
    JPanel jPanel5=new JPanel();
    JPanel jPanel6=new JPanel();
    ObjectOutputStream oos=null;
    void init(Account[] accounts,Account account){
        File file=new File("D://桌面//data");
        try {
            oos=new ObjectOutputStream(new FileOutputStream(file));
        } catch (IOException e) {
            e.printStackTrace();
        }
        name1.setText(accounts[0].getName());
            name2.setText(accounts[1].getName());
            name3.setText(accounts[2].getName());
            name4.setText(accounts[3].getName());
            name5.setText(accounts[4].getName());
            number1.setText(accounts[0].getScore()+"");
            number2.setText(accounts[1].getScore()+"");
            number3.setText(accounts[2].getScore()+"");
            number4.setText(accounts[3].getScore()+"");
            number5.setText(accounts[4].getScore()+"");
            ok.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    accounts[0].setScore((float) Double.parseDouble(number1.getText()));
                    accounts[1].setScore((float) Double.parseDouble(number2.getText()));
                    accounts[2].setScore((float) Double.parseDouble(number3.getText()));
                    accounts[3].setScore((float) Double.parseDouble(number4.getText()));
                    accounts[4].setScore((float) Double.parseDouble(number5.getText()));
                    accounts[5].setScore((float) Double.parseDouble(number1.getText()));
                    for (int i = 0; i <6 ; i++) {
                        try {
                            oos.writeObject(accounts[i]);
                        } catch (IOException ioException) {
                            ioException.printStackTrace();
                        }
                    }
                    JOptionPane.showMessageDialog(jFrame,"修改成功","成功",JOptionPane.PLAIN_MESSAGE);
                }
            });
        Box vbox = Box.createVerticalBox();
        jPanel1.add(name1);
        jPanel1.add(number1);
        jPanel2.add(name2);
        jPanel2.add(number2);
        jPanel3.add(name3);
        jPanel3.add(number3);
        jPanel4.add(name4);
        jPanel4.add(number4);
        jPanel5.add(name5);
        jPanel5.add(number5);
        vbox.add(jPanel1);
        vbox.add(jPanel2);
        vbox.add(jPanel3);
        vbox.add(jPanel4);
        vbox.add(jPanel5);
        jPanel6.add(ok);
        jPanel6.add(jButton);
        jFrame.add(jPanel6, BorderLayout.SOUTH);
        jFrame.add(vbox);
        jFrame.setVisible(true);
        jFrame.setSize(380,410);//设置窗口大小
        jFrame.setLocationRelativeTo(null);//使窗体居中显示
        jFrame.setResizable(false);//设置窗体大小不可变
        jButton.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                jFrame.dispose();
                new TeacherInterface().init(accounts,account);
            }
        });
    }

    public static void main(String[] args) {
        //new InputResults().init();
    }

}

直接复制即可。

  • 10
    点赞
  • 77
    收藏
    觉得还不错? 一键收藏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值