Created
September 16, 2016 04:58
-
-
Save hoanbka/91c541cc6f1329acf1c9f48e793ddbc6 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.hoanbka.javafx.practice; | |
import javafx.application.Application; | |
import javafx.event.ActionEvent; | |
import javafx.event.EventHandler; | |
import javafx.scene.Scene; | |
import javafx.scene.control.Button; | |
import javafx.scene.control.Label; | |
import javafx.scene.control.TextField; | |
import javafx.scene.layout.VBox; | |
import javafx.stage.Stage; | |
import java.util.ArrayList; | |
public class Main extends Application { | |
StudentManager studentManager = new StudentManager(); | |
ArrayList<Student> students = studentManager.getStudents(); | |
@Override | |
public void start(Stage primaryStage) throws Exception { | |
primaryStage.setTitle("Student Management System"); | |
Button addBtnMain = new Button("Add"); | |
Button removeBtn = new Button("Remove"); | |
VBox vBox = new VBox(addBtnMain, removeBtn); | |
Scene scene = new Scene(vBox, 400, 200); | |
primaryStage.setScene(scene); | |
primaryStage.show(); | |
addBtnMain.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
Label nameLable = new Label("Name"); | |
TextField nameTxt = new TextField(); | |
nameTxt.setMaxSize(200, 100); | |
Label idLable = new Label("ID"); | |
TextField idTxt = new TextField(); | |
idTxt.setMaxSize(200, 100); | |
Label ageLable = new Label("Age"); | |
TextField ageTxt = new TextField(); | |
ageTxt.setMaxSize(200, 100); | |
Button addBtn = new Button("Add"); | |
Button backBtn = new Button("Back"); | |
Button clearBtn = new Button("Clear"); | |
TextField result = new TextField(); | |
result.setMaxSize(200, 100); | |
result.setDisable(true); | |
VBox vBox = new VBox(nameLable, nameTxt, idLable, idTxt, ageLable, ageTxt, addBtn, backBtn, clearBtn, result); | |
Scene addScene = new Scene(vBox, 400, 300); | |
primaryStage.setScene(addScene); | |
primaryStage.show(); | |
addBtn.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
try { | |
String name = nameTxt.getText(); | |
String id = idTxt.getText(); | |
int age = Integer.parseInt(ageTxt.getText()); | |
Student student = new Student(name, id, age); | |
if (studentManager.addStudent(student)) { | |
result.setText("Successful"); | |
} else { | |
result.setText("Failed"); | |
} | |
} catch (NumberFormatException ex) { | |
System.out.println("NumberFormatException"); | |
result.setText("Try again!!!"); | |
} | |
} | |
}); | |
backBtn.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
primaryStage.setScene(scene); | |
primaryStage.show(); | |
} | |
}); | |
clearBtn.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
nameTxt.setText(""); | |
idTxt.setText(""); | |
ageTxt.setText(""); | |
} | |
}); | |
} | |
}); | |
removeBtn.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
Label removeIDLable = new Label("ID"); | |
TextField removeTxt = new TextField(); | |
removeTxt.setMaxSize(200, 20); | |
Button removeBtnSub = new Button("Remove"); | |
Button backBtnSub = new Button("Back"); | |
TextField removeResultTxt = new TextField(); | |
removeResultTxt.setMaxSize(200, 20); | |
removeResultTxt.setDisable(true); | |
VBox vBox1 = new VBox(removeIDLable, removeTxt, removeBtnSub, backBtnSub, removeResultTxt); | |
Scene removeScene = new Scene(vBox1, 400, 200); | |
primaryStage.setScene(removeScene); | |
primaryStage.show(); | |
removeBtnSub.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
try { | |
String removeID = removeTxt.getText(); | |
if (studentManager.removeStudentByID(removeID)) { | |
removeResultTxt.setText("Successful"); | |
} else { | |
removeResultTxt.setText("Failed"); | |
} | |
} catch (NumberFormatException ex) { | |
ex.printStackTrace(); | |
} | |
} | |
}); | |
backBtnSub.setOnAction(new EventHandler<ActionEvent>() { | |
@Override | |
public void handle(ActionEvent event) { | |
primaryStage.setScene(scene); | |
primaryStage.show(); | |
} | |
}); | |
} | |
}); | |
} | |
public static void main(String[] args) { | |
Application.launch(args); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment