Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package loancalculator;
- import javafx.scene.control.TextField;
- import javafx.scene.control.*;
- import javafx.application.Application;
- import javafx.geometry.HPos;
- import javafx.geometry.Pos;
- import javafx.scene.Scene;
- import javafx.scene.layout.GridPane;
- import javafx.stage.Stage;
- public class LoanCalculator extends Application {
- private TextField tfAnnualIntRate = new TextField();
- private TextField tfNumYears = new TextField();
- private TextField tfLoanAmount = new TextField();
- private TextField tfMonthlyPayment = new TextField();
- private TextField tfTotPayment = new TextField();
- private Button btCalc = new Button("Calculate");
- private Button btReset = new Button("Reset");
- @Override
- public void start(Stage stage1){
- GridPane gp = new GridPane();
- gp.setHgap(5);
- gp.setVgap(5);
- gp.add(new Label("Annual Interest Rate:"),0,0);
- gp.add(tfAnnualIntRate,1,0);
- gp.add(new Label("Number of Years:"),0,1);
- gp.add(tfNumYears,1,1);
- gp.add(new Label("Loan Amount:"),0,2);
- gp.add(tfLoanAmount,1,2);
- gp.add(new Label("Monthly Payment:"),0,3);
- gp.add(tfMonthlyPayment,1,3);
- gp.add(new Label("Total Payment:"),0,4);
- gp.add(tfTotPayment,1,4);
- gp.add(btCalc,1,5);
- gp.add(btReset,0,5);
- gp.setAlignment(Pos.CENTER);
- tfAnnualIntRate.setAlignment(Pos.BOTTOM_RIGHT);
- tfNumYears.setAlignment(Pos.BOTTOM_RIGHT);
- tfLoanAmount.setAlignment(Pos.BOTTOM_RIGHT);
- tfMonthlyPayment.setAlignment(Pos.BOTTOM_RIGHT);
- tfTotPayment.setAlignment(Pos.BOTTOM_RIGHT);
- tfMonthlyPayment.setEditable(false);
- tfTotPayment.setEditable(false);
- gp.setHalignment(btCalc,HPos.RIGHT);
- gp.setHalignment(btReset,HPos.RIGHT);
- btCalc.setOnAction(e -> calculateLoanPayment());
- btReset.setOnAction((ActionEvent) -> {
- tfAnnualIntRate.setText(" ");
- tfNumYears.setText(" ");
- tfLoanAmount.setText(" ");
- tfMonthlyPayment.setText(" ");
- tfTotPayment.setText(" ");
- });
- Scene scene = new Scene(gp, 400,250);
- stage1.setTitle("Loan Calculator");
- stage1.setScene(scene);
- stage1.show();
- }
- private void calculateLoanPayment(){
- double interest = Double.parseDouble(tfAnnualIntRate.getText());
- int year = Integer.parseInt(tfNumYears.getText());
- double loanAmount = Double.parseDouble(tfLoanAmount.getText());
- Loan loan = new Loan(interest, year, loanAmount);
- tfMonthlyPayment.setText(String.format("$%.2f",loan.getMonthlyPayment()));
- tfTotPayment.setText(String.format("$%.2f", loan.getTotalPayment()));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment