For some reason this is locking up the java application. Did I handle the exception correctly?
private void submitButtonActionPerformed(java.awt.event.ActionEvent evt) {
double amount, interest,rateCalc, a, b, c, payment;
int years, months;
while (true){
try{
amount = Double.valueOf(loanAmount.getText());
interest = Double.valueOf(interestRate.getText());
years = Integer.valueOf(loanYears.getText());
rateCalc = (interest/12);
months = (years*12);
a = Math.pow((1+rateCalc),months);
b = (a*rateCalc);
c = (a-1);
payment = (amount *(b/c));
monthlyPayment.setText("Mortgage Payment $ = " + payment);
} catch (NumberFormatException nfe){
javax.swing.JOptionPane.showMessageDialog(开发者_如何学Cnull,
"Please enter numbers and not letters");
return;
}
}
}
monthlyPayment returns to the java app.
You are creating a loop in the Event Dispatch Thread. This will cause your painting thread to spin, making it feel like your app is hanging and will not allow any other GUI actions to be performed.
I would remove the while(true)
loop.
Try removing the while(true) statement. It shouldn't be necessary in your case.
精彩评论