我最近创建了一个方法,它添加了两个通过两个格式化文本字段输入的双打,并将结果输出到输出文本区域。
这是我到目前为止的代码:
protected void do_btnAdd_actionPerformed(ActionEvent e) {
num1 = ((Number)(firstFT.getValue())).doubleValue();
num2 = ((Number)(secondFT.getValue())).doubleValue();
double result = num1 + num2;
String answer = Double.toString(result);
output.setText(answer);
}
当我使用属性更改事件处理程序时,我在方法的第一行出错。
我的问题是如何通过使用其他事件处理程序(如属性更改)来实现此功能?
它可以通过按钮运行正常我只是想以不同的方式尝试它,希望其他人有类似的问题。
谢谢!
答案 0 :(得分:0)
您必须检查文本字段是否为空。如果您尝试将null转换为double,则会抛出NullPointerException
。
尝试这样的属性更改事件:
if(!firstFT.getText().equals("") && !secondFT.getText().equals("")){
double num1 = ((Number)(firstFT.getValue())).doubleValue();
double num2 = ((Number)(secondFT.getValue())).doubleValue();
double result = num1 + num2;
String answer = Double.toString(result);
output.setText(answer);
}