Results 1 to 9 of 9
  1. #1
    kalibballer is offline Member
    Join Date
    Mar 2009
    Posts
    5
    Rep Power
    0

    Default help with calculator

    i need help with my assignment for this week. i need to modify my mortgage calculator program to allow the user to input the amount of a mortgage and then select from a menu of mortgage loans: 7 years at 5.35%, 15 years at 5.5%, and 30 years at 5.75%. Use an array for the different loans. display the mortgage payment amount. Then, list the loan balance and interest paid for each payment over the term of the loan.

    The code posted below is my best work to reflect these changes, but my program will not execute. Can someone tell me why my program won't run properly and what is missing? any help will be appreciated thanks

    import java.text.*;
    import javax.swing.*;
    import javax.swing.JComboBox;
    import java.awt.*;
    import java.awt.event.*;


    public class calculator extends JFrame implements ActionListener
    {
    private JPanel LabelPane;
    private JPanel FieldPane;
    private JPanel ButtonPane;
    private JLabel LoanAmt;
    private JLabel Term;
    private JLabel Rate;
    private JLabel MonthlyPymt;
    private JTextField TxtLoanAmt;
    private JTextField TxtTermRate;

    private JTextField TxtMthlyPymt;
    private JButton Calculate;
    private JComboBox;
    private String[] termRates = { "5 years @ 5.35%", "7 years @ 5.5%", "10 years @ 5.75%" };
    private JButton Reset;
    private JButton Exit;



    public calculator ()
    {
    //initialize and configure GUI

    setTitle("Mortgage Calculator");
    Toolkit theKit = this.getToolkit(); //Get the window toolkit
    Dimension wndSize = theKit.getScreenSize(); //Get screen size

    //Set the position to screen center & size to half screen size
    setBounds(wndSize.width/3, wndSize.height/3,wndSize.width/2, wndSize.height/2); // Size
    setDefaultCloseOperation(WindowConstants.DISPOSE_O N_CLOSE);

    //Create Label panel and Labels
    JPanel LabelPane = new JPanel();
    LabelPane.setLayout(new GridLayout(4,1,0,60));
    JLabel LoanAmount = new JLabel("Enter loan amount without comma ");
    JLabel TermRate = new JLabel("Enter type of loan");
    new JLabel("Enter interest rate, i.e. 5.78, etc ");
    JLabel MonthlyPymt = new JLabel("Your monthly loan payment is $");

    //Add Labels to Label Panel
    LabelPane.add(LoanAmount);
    //LabelPane.add(TermRate);

    //LabelPane.add(MonthlyPymt);

    //Create TextField Panel and TextFields
    JPanel FieldPane = new JPanel();
    FieldPane.setLayout(new GridLayout(4,1,0,60));{
    TxtLoanAmt = new JTextField(5);
    //TxtTermRate = new JTextField(5);

    //TxtMthlyPymt = new JTextField(5);
    myComboBox = new JComboBox(termRates);
    //Add Fields to Field Panel
    FieldPane.add(TxtLoanAmt);


    //FieldPane.add(TxtTermRate);

    //FieldPane.add(TxtMthlyPymt);

    //Create Button Panel and Button
    JPanel ButtonPane = new JPanel();
    JButton Calculate = new JButton("Calculate"); //button used to calculate mortgage payment
    JButton Reset = new JButton("Reset"); //button used to clear data from the fields
    JButton Exit = new JButton("Exit"); // Exit button added
    ButtonPane.add(Calculate); // Add to JPanel
    ButtonPane.add(Reset); // Reset button added to JPanel
    ButtonPane.add(Exit); // Exit button added to Panel

    //Add panels to container of window
    Container content = this.getContentPane();
    content.setLayout(new BorderLayout());
    content.add(LabelPane, BorderLayout.WEST);
    content.add(FieldPane, BorderLayout.CENTER);
    content.add(ButtonPane, BorderLayout.SOUTH);

    //Set action commands for the text fields
    Calculate.addActionListener(this);
    Reset.addActionListener(this);
    Exit.addActionListener(this);

    this.setVisible(true);}
    }

    public void myComboBox.getSelectIndex(); //setResultValue()
    {
    double amount = Double.parseDouble (TxtLoanAmt.getText());

    int term = Integer.parseInt(TxtTerm.getText())*12;

    double rate = Double.parseDouble (TxtRate.getText()) / 100;

    double result = (amount*(rate/12)) / (1 - 1 /Math.pow((1 + rate/12), term));

    //Format results with two decimals
    DecimalFormat twoDigits = new DecimalFormat("$#,000.00");

    TxtMthlyPymt.setText(twoDigits.format (result));
    }

    public void actionPerformed(ActionEvent ae)
    {
    if (ae.getActionCommand().equals("Calculate"))
    {
    setResultValue();
    }

    else if (ae.getActionCommand().equals("Reset"))
    {
    TxtLoanAmt.setText("");
    TxtTermRate.setText("");

    TxtMthlyPymt.setText("");
    }
    else if (ae.getActionCommand().equals("Exit"))
    {
    System.exit(0);
    }
    }

    public static void main(String[] args)
    {
    calculator frame = new calculator();
    }
    }

  2. #2
    Eranga's Avatar
    Eranga is offline Moderator
    Join Date
    Jul 2007
    Location
    Colombo, Sri Lanka
    Posts
    11,372
    Blog Entries
    1
    Rep Power
    19

    Default

    Ok, what you have tried and what are the issues you come across with? Testing a long code and see a mess lol.

  3. #3
    kalibballer is offline Member
    Join Date
    Mar 2009
    Posts
    5
    Rep Power
    0

    Default

    i get this error
    Exception in thread "main" java.lang.Error: Unresolved compilation problem:

    at calculator.main(calculator.java:131)

  4. #4
    Eranga's Avatar
    Eranga is offline Moderator
    Join Date
    Jul 2007
    Location
    Colombo, Sri Lanka
    Posts
    11,372
    Blog Entries
    1
    Rep Power
    19

  5. #5
    kalibballer is offline Member
    Join Date
    Mar 2009
    Posts
    5
    Rep Power
    0

    Default

    myComboBox = new JComboBox(termRates);

  6. #6
    mtyoung is offline Senior Member
    Join Date
    Dec 2008
    Location
    Hong Kong
    Posts
    473
    Rep Power
    6

  7. #7
    kalibballer is offline Member
    Join Date
    Mar 2009
    Posts
    5
    Rep Power
    0

    Default

    sorry i am new to this. what would i declare?

  8. #8
    mtyoung is offline Senior Member
    Join Date
    Dec 2008
    Location
    Hong Kong
    Posts
    473
    Rep Power
    6

    Default

    declare a JPanel variable with name "LabelPane"
    JPanel LabelPane;

  9. #9
    Eranga's Avatar
    Eranga is offline Moderator
    Join Date
    Jul 2007
    Location
    Colombo, Sri Lanka
    Posts
    11,372
    Blog Entries
    1
    Rep Power
    19

Similar Threads

  1. mortgage calculator help
    By kalibballer in forum New To Java
    Replies: 1
    Last Post: 03-26-2009, 11:35 AM
  2. Calculator program
    By kevzspeare in forum New To Java
    Replies: 6
    Last Post: 03-18-2009, 01:43 PM
  3. Calculator help.
    By madkidd02 in forum New To Java
    Replies: 2
    Last Post: 10-25-2008, 07:42 AM
  4. Java Calculator
    By aapanju in forum New To Java
    Replies: 3
    Last Post: 04-17-2008, 05:33 AM
  5. Swing Calculator
    By nemo in forum AWT / Swing
    Replies: 1
    Last Post: 05-28-2007, 11:07 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •