学生成绩管理系统javafx

目录

1.主界面

 2.增添学生数据

3.删除学生数据 

 4.修改学生数据

5.查看学生数据

 6.显示学生数据


该成绩管理系统共有增添学生数据、删除学生数据、修改学生数据、查看学生数据以及显示学生数据(按平均分排列)五个功能,该系统未使用数据库,使用了excel表格来保存数据(表格在你代码保存路径那里生成)

1.主界面

public class system extends Application{
     static int index = -1;
    private TextField setid = new TextField();
    private TextField setname = new TextField();
    private TextField setmath = new TextField();
    private TextField setEnglish = new TextField();
    private TextField setalgorithm = new TextField();
    private TextField setoperate = new TextField();
    Label addtext=new Label("      ");
     Stage stage = new Stage();
    private Student student;

    @Override
    public void start(Stage arg0) throws Exception {
   
        Button[] bt = new Button[6];
        bt[1] = new Button("增添学生数据");
        bt[2] = new Button("删除学生数据");
        bt[3] = new Button("修改学生数据");
        bt[4] = new Button("查看学生数据");
        bt[5] = new Button("显示学生数据");
        bt[0] = new Button("退出应用");
        Text text = new Text(50, 50, "欢迎使用");
        text.setFont(Font.font("宋体", FontWeight.BOLD, 
                  FontPosture.ITALIC, 36));
        Text text1 = new Text(50, 50, "学生成绩管理系统");
        text1.setFont(Font.font("宋体", FontWeight.BOLD, 
                  FontPosture.ITALIC, 36));
        Text text2 = new Text(50, 50, "      ");
        VBox pane=new VBox(40);
        pane.setAlignment(Pos.BASELINE_CENTER);
        pane.getChildren().add(text);
        pane.getChildren().add(text1);
        pane.getChildren().add(text2);
        pane.getChildren().add(bt[1]);
        pane.getChildren().add(bt[2]);
        pane.getChildren().add(bt[3]);
        pane.getChildren().add(bt[4]);
        pane.getChildren().add(bt[5]);
        pane.getChildren().add(bt[0]);
        BorderPane pane0 = new BorderPane();
        Rectangle rectangle;
        Image image = new Image("https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fwww.keaidian.com%2Fuploads%2Fallimg%2F190504%2F04150928_28.jpg&refer=http%3A%2F%2Fwww.keaidian.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=jpeg?sec=1643211381&t=5cc837837f8949cfaa9fd68721614dca");//获取图片
        ImageView imageview = new ImageView(image);
        imageview.setFitHeight(800);
        imageview.setFitWidth(800);//更改图片大小
        pane0.getChildren().add(imageview);
        pane0.setCenter(pane);//将pane面板覆盖在pane2上
        Scene scene = new Scene(pane0, 800, 800);//定义面板大小
        stage.setTitle("广东外语外贸大学");
        stage.setScene(scene);
        stage.show();
        
        bt[0].setOnAction(e -> EXIT());
        bt[1].setOnAction(e -> {
            try {
                addStudents();
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
        });
        bt[2].setOnAction(e -> deleteStudents());  
        bt[3].setOnAction(e -> amendStudents());
        bt[4].setOnAction(e ->checkStundets());
        bt[5].setOnAction(e ->{
            try {
                showscore();
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
        });
        
    }
    public static void main(String[] args){
        String fileName = "studentscore.csv";
        try{
            File file = new File("studentscore.csv");
            if(file.createNewFile())
                System.out.println("文件创建成功!");
            else
                System.out.println("该文件已经存在。");
        }
        catch(IOException ioe) {
            ioe.printStackTrace();
        }

        launch(args);
    }


    private void EXIT() {//关闭界面,结束程序
        stage.close();
    }

 2.增添学生数据

这里要求必须输入全部数据,否则不能添加,另外当学生重复时也不能添加。

部分代码

   private void addstudents() throws Exception {
	       ArrayList<Student> students = new ArrayList<Student>();
	        readFile("studentscore.csv",students);
	        boolean h = true;
	        if(setid.getText().length()<1||setname.getText().length()<1|| setmath.getText().length()<1||setEnglish.getText().length()<1||setalgorithm.getText().length()<1||setoperate.getText().length()<1) {

        	addtext.setText("请输入学生全部信息");	
        }
	        else {
	            for (Student student : students) {
	                if (setid.getText().equals(student.getId())) {
	                	h = false;
	                    VBox pane=new VBox(40);
	                    pane.setAlignment(Pos.BASELINE_CENTER);
	                    HBox pane1=new HBox(5);
	                    pane1.setAlignment(Pos.BASELINE_CENTER);
	                    Text text = new Text(100, 100, "系统已有该学生!");
	                    text.setFont(Font.font("宋体", FontWeight.BOLD, 
	          	    	      FontPosture.ITALIC, 36));
	                    text.setFill(Color.RED);
	            	    Text text1 = new Text(50, 50, "            ");
	            	    Text text2 = new Text(50, 50, "            ");
	            	    Text text3 = new Text(50, 50, "            ");
	            	    Text text4 = new Text(50, 50, "                  ");
	                    Button bt1 = new Button("重试");
	                    Button bt2 = new Button("退出");
	                    pane.getChildren().add(text1);
	                    pane.getChildren().add(text2);
	                    pane.getChildren().add(text);
	                    pane.getChildren().add(text3);
	                    pane.getChildren().add(pane1);
	                    pane1.getChildren().add(bt1);
	                    pane1.getChildren().add(text4);
	                    pane1.getChildren().add(bt2);

3.删除学生数据 

 这里先按照学生学号查找进行查找,再确定是否删除

    private void deleteStudents() {//删除学生1
        VBox pane=new VBox(20);
        pane.setAlignment(Pos.BASELINE_CENTER);
        HBox pane1=new HBox(20);
        pane1.setAlignment(Pos.BASELINE_CENTER);
        HBox pane2=new HBox(20);
        pane2.setAlignment(Pos.BASELINE_CENTER);
        Text text = new Text(100, 100, "请输入你要删除学员的学号:");
        text.setFont(Font.font("宋体", FontWeight.BOLD, 
	    	      FontPosture.ITALIC, 20));
        Text text1 = new Text(100, 100, "      ");
        Text text2 = new Text(100, 100, "      ");
        Button bt1 = new Button("确认");
        Button bt2 = new Button("返回");
        pane.getChildren().add(text1);
        pane.getChildren().add(text2);
        pane.getChildren().add(text);
        pane.getChildren().add(pane1);
        pane1.getChildren().add(setid);
        pane.getChildren().add(pane2);
        pane2.getChildren().add(bt1);
        pane2.getChildren().add(bt2);
        
        Scene scene = new Scene(pane, 400, 400);
        stage.setScene(scene);
        bt1.setOnAction(e -> {
			try {
				deletestudents();
			} catch (IOException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
        bt2.setOnAction(e ->{
			try {
				start(stage);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
                
    }

 private void deletestudents() throws IOException {
	       ArrayList<Student> students = new ArrayList<Student>();
	        readFile("studentscore.csv",students);
            for (int i = 0; i < students.size(); i++) {
            	Student student = students.get(i);
            	if(setid.getText().equals(student.getId())) {
            		index = i;
                    Text text1 = new Text(160, 50, "学号:\t" +student.getId());
                    Text text2 = new Text(160, 80, "姓名:\t" + student.getName());
                    Text text3 = new Text(160, 120, "高等数学:\t" + student.getMath());
                    Text text4 = new Text(160, 150, "大学英语:\t" + student.getEnglish());
                    Text text5 = new Text(160, 180, "算法分析与设计:\t" + student.getAlgorithm());
                    Text text6 = new Text(160, 210, "操作系统:\t" + student.getOperate());
                    Button bt1 = new Button("删除");
                    Button bt2 = new Button("返回");
                    bt1.setLayoutX(135);
                    bt1.setLayoutY(240);
                    bt2.setLayoutX(235);
                    bt2.setLayoutY(240);
                    Pane pane = new Pane();
                    pane.getChildren().addAll(text1, text2, text3, text4,text5,text6, bt1, bt2);
                    Scene scene = new Scene(pane, 400, 400);
                    stage.setScene(scene);
                    bt1.setOnAction(e -> {
						try {
							detele();
						} catch (IOException e2) {
							// TODO Auto-generated catch block
							e2.printStackTrace();
						} catch (Exception e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						}
					});                  
                    bt2.setOnAction(e ->{
						try {
							index = -1;
							deleteStudents();
						} catch (Exception e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						}
					});
                    break;
            	}
            }
            if(index==-1){

                VBox pane=new VBox(40);
                pane.setAlignment(Pos.BASELINE_CENTER);
                HBox pane1=new HBox(5);
                pane1.setAlignment(Pos.BASELINE_CENTER);
                Text text = new Text(100, 100, "系统无该学生信息!");
                text.setFont(Font.font("宋体", FontWeight.BOLD, 
      	    	      FontPosture.ITALIC, 36));
                text.setFill(Color.RED);
        	    Text text1 = new Text(50, 50, "            ");
        	    Text text2 = new Text(50, 50, "            ");
        	    Text text3 = new Text(50, 50, "            ");
        	    Text text4 = new Text(50, 50, "                  ");
                Button bt1 = new Button("重试");
                Button bt2 = new Button("退出");
                pane.getChildren().add(text1);
                pane.getChildren().add(text2);
                pane.getChildren().add(text);
                pane.getChildren().add(text3);
                pane.getChildren().add(pane1);
                pane1.getChildren().add(bt1);
                pane1.getChildren().add(text4);
                pane1.getChildren().add(bt2);
                
                Scene scene = new Scene(pane, 400, 400);
                stage.setScene(scene);
                
                bt1.setOnAction(e -> deleteStudents() );
                bt2.setOnAction(e ->{
					try {
						start(stage);
					} catch (Exception e1) {
						// TODO Auto-generated catch block
						e1.printStackTrace();
					}
				});
            	
            }   	
    }
    private void detele() throws Exception {
    	

	       ArrayList<Student> students = new ArrayList<Student>();
	        readFile("studentscore.csv",students);
            students.remove(index);
            writeFile("studentscore.csv",students);
            VBox pane=new VBox(40);
            pane.setAlignment(Pos.BASELINE_CENTER);
            Text text = new Text(180, 180, "删除成功!");
            text.setFont(Font.font("宋体", FontWeight.BOLD, 
  	    	      FontPosture.ITALIC, 36));
            text.setFill(Color.RED);
    	     Text text1 = new Text(50, 50, "      ");
    	     Text text2 = new Text(50, 50, "      ");
    	     Text text3 = new Text(50, 50, "      ");
            Button bt = new Button("退出");
            pane.getChildren().add(text1);
            pane.getChildren().add(text2);
            pane.getChildren().add(text);
            pane.getChildren().add(text3);
            pane.getChildren().add(bt);  
            Scene scene = new Scene(pane, 400, 400);
            stage.setScene(scene);
            bt.setOnAction(e ->{
				try {
					start(stage);
				} catch (Exception e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				}
			});
    	
    }

 4.修改学生数据

这里也是按照学号进行查找后进入修改界面

  private void amendStudents() {//修改学生1

        VBox pane=new VBox(20);
        pane.setAlignment(Pos.BASELINE_CENTER);
        HBox pane1=new HBox(20);
        HBox pane2=new HBox(20);
        pane1.setAlignment(Pos.BASELINE_CENTER);
        pane2.setAlignment(Pos.BASELINE_CENTER);
        Text text = new Text(100, 100, "请输入你要修改学员的学号:");
        text.setFont(Font.font("宋体", FontWeight.BOLD, 
	    	      FontPosture.ITALIC, 20));
        Text text1 = new Text(100, 100, "      ");
        Text text2 = new Text(100, 100, "      ");
        Button bt1 = new Button("确认");
        Button bt2 = new Button("返回");
        pane.getChildren().add(text1);
        pane.getChildren().add(text2);
        pane.getChildren().add(text);
        pane.getChildren().add(pane1);
        pane1.getChildren().add(setid);
        pane.getChildren().add(pane2);
        pane2.getChildren().add(bt1);
        pane2.getChildren().add(bt2);  
        Scene scene = new Scene(pane, 400, 400);
        stage.setScene(scene);
        bt1.setOnAction(e -> {
			try {
				amendstudents();
			} catch (IOException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
        bt2.setOnAction(e ->{
			try {
				start(stage);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
              
 }

  private void amendstudents() throws IOException {
    	
           	    Button bt = new Button("修改");
                VBox pane=new VBox(20);
                pane.setAlignment(Pos.BASELINE_CENTER);
                HBox pane3=new HBox(5);
                pane3.setAlignment(Pos.BASELINE_CENTER);
                HBox pane4=new HBox(5);
                pane4.setAlignment(Pos.BASELINE_CENTER);
                HBox pane5=new HBox(5);
                pane5.setAlignment(Pos.BASELINE_CENTER);
                HBox pane6=new HBox(5);
                pane6.setAlignment(Pos.BASELINE_CENTER);
                Label title=new Label("请输入修改的成绩");
                Font FontItalic=Font.font("宋体",FontWeight.NORMAL,FontPosture.ITALIC,36);
                Label title3=new Label("高等数学         ");
                Label title4=new Label("大学英语         ");
                Label title5=new Label("算法分析与设计");
                Label title6=new Label("操作系统         ");
                
                pane.getChildren().add(title);
                pane.getChildren().add(pane3);
                pane3.getChildren().add(title3);
                pane3.getChildren().add(setmath);
                pane.getChildren().add(pane4);
                pane4.getChildren().add(title4);
                pane4.getChildren().add(setEnglish);
                pane.getChildren().add(pane5);
                pane5.getChildren().add(title5);
                pane5.getChildren().add(setalgorithm);
                pane.getChildren().add(pane6);
                pane6.getChildren().add(title6);
                pane6.getChildren().add(setoperate);
                pane.getChildren().add(bt); 
               Scene scene = new Scene(pane,900,500);
                stage.setTitle("修改成绩");
                stage.setScene(scene);
           		bt.setOnAction(e ->{
					try {
						amend();
					} catch (IOException e1) {
						// TODO Auto-generated catch block
						e1.printStackTrace();
					}
				});
 	
    }
    private void amend() throws IOException {
	       ArrayList<Student> students = new ArrayList<Student>();
	        readFile("studentscore.csv",students);
	        boolean k = true;
           for (int i = 0; i < students.size(); i++) {
        	   if (students.get(i).getId().equals(setid.getText())) {
        		   k = false;
        		   if(setmath.getText().length()<1) {
        			   students.get(i).setMath(students.get(i).getMath());
        		   }
        		   else {
        			   students.get(i).setMath(setmath.getText());
        		   }
        		   if(setEnglish.getText().length()<1) {
        			   students.get(i).setEnglish( students.get(i).getEnglish());
        		   }
        		   else {
        			   students.get(i).setEnglish(setEnglish.getText());
        		   }
        		 if(setalgorithm.getText().length()<1) {
        			 students.get(i).setAlgorithm(students.get(i).getAlgorithm());
        		 }
        		 else {
        			 students.get(i).setAlgorithm(setalgorithm.getText());
        		 }
        		  if(setoperate.getText().length()<1) {
        			  students.get(i).setOperate( students.get(i).getOperate());
        		  }
        		  else {
        			  students.get(i).setOperate(setoperate.getText());
        		  }
        		   writeFile("studentscore.csv",students);
//        		      Text text = new Text( "修改成功!");
//        		        text.setFill(Color.RED);
        		    Text text = new Text(50, 50, "修改成功");
        		    text.setFont(Font.font("宋体", FontWeight.BOLD, 
        		    	      FontPosture.ITALIC, 36));
        		        Button bt = new Button("退出");
        		        VBox pane=new VBox(100);
           		        pane.setAlignment(Pos.BASELINE_CENTER);

        		        pane.getChildren().add(text);
        		        pane.getChildren().add(bt);
        	
        		        Scene scene = new Scene(pane, 700, 400);
        		        stage.setScene(scene);
        		        bt.setOnAction(e ->{
        					try {
        						start(stage);
        					} catch (Exception e1) {
        						// TODO Auto-generated catch block
        						e1.printStackTrace();
        					}
        				});
        		        break;
        	   }
        	   
           }
           
         if(k){
         Text text = new Text(100, 100, "系统无该学生信息!");
         text.setFill(Color.RED);
         Button bt1 = new Button("重试");
         Button bt2 = new Button("退出");
         bt1.setLayoutX(100);
         bt1.setLayoutY(130);
         bt2.setLayoutX(200);
         bt2.setLayoutY(130);
         Pane pane = new Pane();
         pane.getChildren().addAll(text, bt1, bt2);
         
         Scene scene = new Scene(pane, 350, 250);
         stage.setScene(scene);
         bt1.setOnAction(e ->amendStudents());
         bt2.setOnAction(e ->{
			try {
				start(stage);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
     }
  	
  }

5.查看学生数据

学号查找

  private void checkStundets() {//查看学生1
        VBox pane=new VBox(20);
        pane.setAlignment(Pos.BASELINE_CENTER);
        HBox pane1=new HBox(20);
        pane1.setAlignment(Pos.BASELINE_CENTER);
        HBox pane2=new HBox(20);
        pane2.setAlignment(Pos.BASELINE_CENTER);
        Text text = new Text(100, 100, "请输入你要查看学员的学号:");
        text.setFont(Font.font("宋体", FontWeight.BOLD, 
	    	      FontPosture.ITALIC, 20));
        Text text1 = new Text(100, 100, "      ");
        Text text2 = new Text(100, 100, "      ");
        Button bt1 = new Button("确认");
        Button bt2 = new Button("返回");
        pane.getChildren().add(text1);
        pane.getChildren().add(text2);
        pane.getChildren().add(text);
        pane.getChildren().add(pane1);
        pane1.getChildren().add(setid);
        pane.getChildren().add(pane2);
        pane2.getChildren().add(bt1);
        pane2.getChildren().add(bt2);
        
        Scene scene = new Scene(pane, 400, 400);
        stage.setScene(scene);
        bt1.setOnAction(e ->{
			try {
				checktudents();
			} catch (IOException e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
        bt2.setOnAction(e ->{
			try {
				start(stage);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
    }

 private void checktudents() throws IOException {
	       ArrayList<Student> students = new ArrayList<Student>();
	        readFile("studentscore.csv",students);
	        boolean count = true;
            for (Student student : students) {
            	if(setid.getText().equals(student.getId())) {
            		count = false;
                    Text text1 = new Text(160, 50, "学号:\t" +student.getId());
                    Text text2 = new Text(160, 80, "姓名:\t" + student.getName());
                    Text text3 = new Text(160, 120, "高等数学:\t" + student.getMath());
                    Text text4 = new Text(160, 150, "大学英语:\t" + student.getEnglish());
                    Text text5 = new Text(160, 180, "算法分析与设计:\t" + student.getAlgorithm());
                    Text text6 = new Text(160, 210, "操作系统:\t" + student.getOperate());
                    
                    Button bt2 = new Button("返回");
                    bt2.setLayoutX(200);
                    bt2.setLayoutY(250);
                    Pane pane = new Pane();
                    pane.getChildren().addAll(text1, text2, text3, text4,text5,text6, bt2);
                    Scene scene = new Scene(pane, 500, 500);
                    stage.setScene(scene);
    				bt2.setOnAction(e ->{
						try {
							start(stage);
						} catch (Exception e1) {
							// TODO Auto-generated catch block
							e1.printStackTrace();
						}
					});
                	break;
            	}
            }
            if(count){
                Text text = new Text(100, 100, "未找到该学生信息!");
                text.setFill(Color.RED);
                Button bt1 = new Button("重试");
                Button bt2 = new Button("退出");
                bt1.setLayoutX(100);
                bt1.setLayoutY(130);
                bt2.setLayoutX(200);
                bt2.setLayoutY(130);
                Pane pane = new Pane();
                pane.getChildren().addAll(text, bt1, bt2);
                
                Scene scene = new Scene(pane, 350, 250);
                stage.setScene(scene);
                
                bt1.setOnAction(e -> checkStundets());
                bt2.setOnAction(e ->{
					try {
						start(stage);
					} catch (Exception e1) {
						// TODO Auto-generated catch block
						e1.printStackTrace();
					}
				});            	
            }           	
    }

 6.显示学生数据

 private void showscore() throws IOException {
	       ArrayList<Student> students = new ArrayList<Student>();
	        readFile("studentscore.csv",students);
	        ArrayList<avestudent> stu = new ArrayList<avestudent>();
	        for (int i = 0; i < students.size(); i++) {
	        	Student student = students.get(i);
	        	avestudent count = new avestudent();
	        	count.setId(student.getId());
	        	count.setName(student.getName());
	        	count.setMath(Float.parseFloat(student.getMath()));
	        	count.setEnglish(Float.parseFloat(student.getEnglish()));
	        	count.setAlgorithm(Float.parseFloat(student.getAlgorithm()));
	        	count.setOperate(Float.parseFloat(student.getOperate()));
		        float ave=(float) count.getAverage(count); 
	        	count.setAverage(ave);
	        	stu.add(count);
	        }
			   
           for(int i=0;i<stu.size();i++) {
        	   for(int j=i+1;j<stu.size();j++) {
        		   if( stu.get(i).getAverage()<stu.get(j).getAverage()) {
       
        			   avestudent s=new avestudent(stu.get(i).getId(),stu.get(i).getName(),stu.get(i).getMath(),stu.get(i).getEnglish(),stu.get(i).getAlgorithm(),stu.get(i).getOperate(),stu.get(i).getAverage());
        			   stu.get(i).setId(stu.get(j).getId());
        			   stu.get(i).setName(stu.get(j).getName());
        			   stu.get(i).setMath(stu.get(j).getMath());
        			   stu.get(i).setEnglish(stu.get(j).getEnglish());
        			   stu.get(i).setAlgorithm(stu.get(j).getAlgorithm());
        			   stu.get(i).setOperate(stu.get(j).getOperate());
        			   stu.get(i).setAverage(stu.get(j).getAverage());
        			   
        			   stu.get(j).setId(s.getId());
        			   stu.get(j).setName(s.getName());
        			   stu.get(j).setMath(s.getMath());
        			   stu.get(j).setEnglish(s.getEnglish());
        			   stu.get(j).setAlgorithm(s.getAlgorithm());
        			   stu.get(j).setOperate(s.getOperate());
        			   stu.get(j).setAverage(s.getAverage());
        			   
        		   }
        	   }
           }
        GridPane pane = new GridPane();
        pane.setHgap(40);
        pane.setVgap(60);
        
        pane.add(new Label("学号") , 0, 0);
        pane.add(new Label("姓名"), 1, 0);
        pane.add(new Label("高等数学"), 2, 0);
        pane.add(new Label("大学英语"), 3, 0);
        pane.add(new Label("算法分析与设计"), 4, 0);
        pane.add(new Label("操作系统"), 5, 0);
        pane.add(new Label("平均分"), 6, 0);
        pane.add(new Label("名次"), 7, 0);
        Text[][] text = new Text[stu.size()][8];
    	int count=0;
        for (int i = 0; i < stu.size(); i++) {
   
        	avestudent student = stu.get(i);
            text[i][0] = new Text("" + student.getId());
            text[i][1] = new Text("" + student.getName());
            text[i][2] = new Text("" + student.getMath());
            text[i][3] = new Text("" + student.getEnglish());
            text[i][4] = new Text("" + student.getAlgorithm());
            text[i][5] = new Text("" + student.getOperate());
            text[i][6] = new Text("" + student.getAverage());
            for(;count<=i;) {
            	++count;
                text[i][7] = new Text(""+count);
            }

            pane.add(text[i][0], 0, i + 1);
            pane.add(text[i][1], 1, i + 1);
            pane.add(text[i][2], 2, i + 1);
            pane.add(text[i][3], 3, i + 1);
            pane.add(text[i][4], 4, i + 1);
            pane.add(text[i][5], 5, i + 1);    
            pane.add(text[i][6], 6, i + 1);  
            pane.add(text[i][7], 7, i + 1); 
          
        }
        Button bt = new Button("返回");
        pane.add(bt, 3, students.size() + 1);
        Scene scene = new Scene(pane);
        stage.setScene(scene);
        bt.setOnAction(e ->{
			try {
				start(stage);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		});
    }

源代码请私信

  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
学生成绩管理系统是一个常见的应用程序,可以使用JavaFX来实现。下面是一个简单的示例,展示了如何使用JavaFX创建一个学生成绩管理系统: ```java import javafx.application.Application; import javafx.collections.FXCollections; import javafx.collections.ObservableList; import javafx.scene.Scene; import javafx.scene.control.*; import javafx.scene.control.cell.PropertyValueFactory; import javafx.scene.layout.VBox; import javafx.stage.Stage; public class StudentGradeManagementSystem extends Application { private TableView<Student> tableView; public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) { primaryStage.setTitle("学生成绩管理系统"); // 创建表格视图 tableView = new TableView<>(); // 创建表格列 TableColumn<Student, String> nameColumn = new TableColumn<>("姓名"); nameColumn.setCellValueFactory(new PropertyValueFactory<>("name")); TableColumn<Student, Integer> scoreColumn = new TableColumn<>("成绩"); scoreColumn.setCellValueFactory(new PropertyValueFactory<>("score")); // 将列添加到表格视图中 tableView.getColumns().add(nameColumn); tableView.getColumns().add(scoreColumn); // 创建学生数据 ObservableList<Student> students = FXCollections.observableArrayList( new Student("张三", 90), new Student("李四", 80), new Student("王五", 70) ); // 将学生数据设置到表格视图中 tableView.setItems(students); // 创建布局 VBox vbox = new VBox(tableView); // 创建场景 Scene scene = new Scene(vbox, 300, 200); // 设置场景 primaryStage.setScene(scene); // 显示窗口 primaryStage.show(); } public static class Student { private String name; private int score; public Student(String name, int score) { this.name = name; this.score = score; } public String getName() { return name; } public int getScore() { return score; } } } ``` 这个示例创建了一个简单的学生成绩管理系统,使用JavaFX的TableView组件展示学生的姓名和成绩。你可以根据自己的需求修改表格的内容和属性格式,以及添加其他功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值