Я пишу преобразователь температуры, который использует графический интерфейс.У меня настроено, если пользователь вводит строку или неверную температуру, под окном ввода появляется метка ошибки.Однако код все равно будет обрабатываться так, как если бы пользователь ввел 0. Он все равно будет выводить преобразования.Как я могу помешать ему делать это в классе, который у меня ниже?
package gui;
import javax.swing.*;
import java.awt.*;
public class JDataInput
extends JPanel
{
private JLabel lblInput;
private JTextField txtInput;
private JLabel lblMessage;
public JDataInput()
{
}
public JDataInput(String caption)
{
lblInput = new JLabel(caption);
txtInput = new JTextField(20);
lblMessage = new JLabel("");
JPanel row1 = new JPanel();
JPanel row2 = new JPanel();
row1.add(lblInput);
row1.add(txtInput);
row2.add(lblMessage);
this.add(row1);
this.add(row2);
}
public double getDoubleValue()
{
double returnValue = 0;
lblMessage.setText(" ");
try
{
returnValue = Double.parseDouble(txtInput.getText());
}
catch (NumberFormatException nfex)
{
lblMessage.setText(nfex.toString());
lblMessage.setForeground(Color.RED);
}
return returnValue;
}
public double getIntValue()
{
int returnValue = 0;
lblMessage.setText(" ");
try
{
returnValue = Integer.parseInt(txtInput.getText());
}
catch (NumberFormatException nfex)
{
lblMessage.setForeground(Color.RED);
lblMessage.setText(nfex.toString());
}
return returnValue;
}
}