0

私はswingを使用してGUIで簡単なローン計算機を書いています。DecimalFormatを使用して、JFormattedTextFieldに対して指定された形式####。##で入力を確実にキャプチャしました。

public static void main(String[] args) {
    JFormattedTextField loanAmountField = new JFormattedTextField(new DecimalFormat("####.##"));
    JFormattedTextField interestRateField = new JFormattedTextField(new DecimalFormat("####.##"));
    JFormattedTextField yearField = new JFormattedTextField(new DecimalFormat("####.##"));
    JFormattedTextField monthlyPaymentField = new JFormattedTextField(new DecimalFormat("####.##"));
}

ユーザーが私の「計算」ボタンを押すと、monthlyPaymentFieldが計算されて表示されます。

プログラムで正しく表示されるかどうかをテストするために、monthlyPaymentFieldに12.22の値を割り当てようとしましたが、monthlyPaymentFieldをdoubleとして宣言する必要があるというエラーが表示されます。

class CalculateListener implements ActionListener {
public CalculateListener (JFormattedTextField loanAmountField, JFormattedTextField     monthlyPaymentField, JFormattedTextField interestRateField, JFormattedTextField yearField, int monthlyTest)
{
  this.interestRateField = interestRateField;   
  this.yearField = yearField;
  this.loanAmountField = loanAmountField;
  this.monthlyPaymentField = monthlyPaymentField;
  this.monthlyTest = monthlyTest;
}

public void actionPerformed(ActionEvent event){

   monthlyPaymentField = 12.22;

    }

}

JFormattedTextFieldをDecimalFormatで使用しながら、monthlyPaymentFieldにFloatを表示できるようにするには、どうすればよいですか?

4

2 に答える 2

2

setValueこのための方法を使用できます。

monthlyPaymentField.setValue(new Double(12.22)); 
于 2012-06-21T23:39:05.287 に答える
1

setValueを使用します。つまり、次のようになります。

monthlyPaymentField.setValue(new Double(12.22));

フォーマットされたテキストフィールドの使用方法チュートリアルには、doubleを使用した良い例があります。

于 2012-06-21T23:40:20.260 に答える