BMI 計算アプリケーションを作成しています。現在、1 つのフィールドにデータを入力しないと、プログラムが動作しなくなるエラーが発生します。たとえば、「高さ」には 2 つの JTextFIelds があり、1 つはフィートで、もう 1 つはインチです。足の JTextField に '6' を入力し、インチの JTextField に何も入力せず、体重の JTextField に体重を入力して [計算] をクリックしても機能しません。
私がやりたいのは、1 つのフィールドにデータが含まれていない場合に、「すべてのフィールドが入力されていることを確認してください」というメッセージ ダイアログを表示することです。
以下は、「計算」ボタンに追加された ActionHandler コードです。
public void actionPerformed(ActionEvent e) {
double heightFT = ((Double.parseDouble(heightFt_TF.getText()));
double heightIn = (Double.parseDouble(heightIn_TF.getText()));
double weight = (Double.parseDouble(weight_TF.getText()));
double totalHeight = (heightFT*12) + heightIn;
BMI = (weight / (totalHeight*totalHeight)) * 703;
String s = BMI+"";
s = s.substring(0,4);
BMI_TF.setText(s);
}
解決済み
私は今問題を修正しました。私がしたことは、メソッドに「throws NumberFormatException」を追加し、try catch を実行することでした。try コード ブロックでは、すべてのデータ フィールドが入力された場合に実行するコードを記述しました。catch 句では、NumberFormatException を使用し、メッセージ ダイアログにエラー メッセージを表示するだけのコードを記述しました。これで、1 つのフィールドが入力されていない場合、メッセージ ダイアログが表示されます。