intellij version of CashMachineBlueJ

CashMachineApp.java 2.9KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. package rocks.zipcode.atm;
  2. import javafx.scene.layout.HBox;
  3. import rocks.zipcode.atm.bank.Bank;
  4. import javafx.application.Application;
  5. import javafx.scene.Parent;
  6. import javafx.scene.Scene;
  7. import javafx.scene.control.Button;
  8. import javafx.scene.control.TextArea;
  9. import javafx.scene.control.TextField;
  10. import javafx.scene.layout.VBox;
  11. import javafx.stage.Stage;
  12. import javafx.scene.layout.FlowPane;
  13. /**
  14. * @author ZipCodeWilmington
  15. */
  16. public class CashMachineApp extends Application {
  17. private TextField field = new TextField();
  18. private CashMachine cashMachine = new CashMachine(new Bank());
  19. private Parent createContent() {
  20. VBox vbox = new VBox(10);
  21. vbox.setPrefSize(800, 600);
  22. TextArea areaInfo = new TextArea();
  23. Button btnSubmit = new Button("Account ID");
  24. btnSubmit.setStyle("-fx-border-color: #0000ff; -fx-border-width: 5px;");
  25. btnSubmit.setOnAction(e -> {
  26. int id = Integer.parseInt(field.getText());
  27. cashMachine.login(id);
  28. areaInfo.setText(cashMachine.toString());
  29. });
  30. Button btnDeposit = new Button("Deposit");
  31. btnDeposit.setStyle("-fx-border-color: #0000ff; -fx-border-width: 5px;");
  32. btnDeposit.setOnAction(e -> {
  33. int amount = Integer.parseInt(field.getText());
  34. cashMachine.deposit(amount);
  35. areaInfo.setText(cashMachine.toString());
  36. });
  37. Button btnWithdraw = new Button("Withdraw");
  38. btnWithdraw.setStyle("-fx-border-color: #0000ff; -fx-border-width: 5px;");
  39. btnWithdraw.setOnAction(e -> {
  40. int amount = Integer.parseInt(field.getText());
  41. cashMachine.withdraw(amount);
  42. areaInfo.setText(cashMachine.toString());
  43. });
  44. Button btnBalance = new Button("Balance");
  45. btnBalance.setStyle("-fx-border-color: #0000ff; -fx-border-width: 5px;");
  46. btnBalance.setOnAction(e -> {
  47. int amount = Integer.parseInt(field.getText());
  48. cashMachine.balance(amount);
  49. areaInfo.setText(cashMachine.toString());
  50. });
  51. Button btnExit = new Button("Exit");
  52. btnExit.setStyle("-fx-border-color: #0000ff; -fx-border-width: 5px;");
  53. btnExit.setOnAction(e -> {
  54. cashMachine.exit();
  55. areaInfo.setText(cashMachine.toString());
  56. });
  57. FlowPane flowpane = new FlowPane();
  58. flowpane.getChildren().add(btnSubmit);
  59. flowpane.getChildren().add(btnDeposit);
  60. flowpane.getChildren().add(btnWithdraw);
  61. flowpane.getChildren().add(btnExit);
  62. vbox.getChildren().addAll(field, flowpane, areaInfo);
  63. return vbox;
  64. }
  65. @Override
  66. public void start(Stage stage) throws Exception {
  67. stage.setTitle("Welcome to ZipCloudBank");
  68. stage.setScene(new Scene(createContent()));
  69. stage.show();
  70. }
  71. public static void main(String[] args) {
  72. launch(args);
  73. }
  74. }