Я должен создать калькулятор в Java Swing / AWT, который вычисляет различные функции.
Например, ему нужно вычислить GCD.
Сначала я создал пользовательский интерфейс, а затем функцию actionPerformed, но когда я выполняю функцию gcd
в графическом интерфейсе, экран зависает.
calculate2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// Get values from text fields
try {
int a = Integer.parseInt(input1.getText());
int b = Integer.parseInt(input2.getText());
while (a != b) {
if(a > b)
a = a - b;
else
a = b - a;
}
String result1 = "" + (b);
result.setText((result1));
} catch (Exception f) {
JOptionPane.showMessageDialog(rootPane, "ERROR: " + (f.getMessage()));
}
String aField = input1.getText();
String bField = input2.getText();
if (e.getSource() == calculate2) {
if ("".equals(aField) || "".equals(bField)) {
String emptyFieldWarning;
emptyFieldWarning = "One or more fields is/are empty!";
JOptionPane.showMessageDialog(rootPane, emptyFieldWarning);
}
}
}
});