Я работаю над программой, которая запускает апплет, который продемонстрирует, как работает алгоритм Extended-Euclid.У меня есть два поля JTextFields, в которые будут вводиться значения, и их нужно прочитать / преобразовать в целые числа и т. Д. У меня возникли проблемы с чтением входных значений для начала.
Обновленный вопрос:
Я внес изменения в свой код после прочтения первого ответа.Вместо использования DocumentListener я делаю все в своем методе actionPerformed, как это было предложено, но когда я пытаюсь протестировать, я все еще получаю ошибки.
Это мой текущий actionPerformed:
public void actionPerformed(ActionEvent event) {
System.out.println(event.getActionCommand());
String quotient = "";
nText = nField.getText();
mText = mField.getText();
if("Find GCD".equals(event.getActionCommand())){
int nInt = Integer.parseInt(nText);
int mInt = Integer.parseInt(mText);
int q = mInt/nInt;
quotient = (Integer.toString(q));
}
else quotient = "n/a";
//NOT the gcd, just to see if this will display
gcd.setText(quotient);
gcd.setEditable(false);
}
(примечание: gcd - это еще один JTextField, но ему просто нужно отобразить результат)
Теперь, после нажатия моей кнопки, я получаю в консоли следующие ошибки:
Исключение внить "AWT-EventQueue-1" java.lang.NullPointerException в EuclidApplet.actionPerformed (EuclidApplet.java:87) в javax.swing.AbstractButton.fireActionPerformed (Неизвестный источник) в javax.swing.AbstractBknownerformed $в javax.swing.DefaultButtonModel.fireActionPerformed (Неизвестный источник) в javax.swing.DefaultButtonModel.setPressed (Неизвестный источник) в javax.swing.plaf.basic.BasicButtonListener.mouseReleased (Неизвестный источник) в java.awtИсточник) на javax.swing.JComponent.processMouseEvent (Неизвестный источник) на java.awt.Component.processEvent (неизвестный источник) в java.awt.Container.processEvent (неизвестный источник) в java.awt.Component.dispatchEventImpl (неизвестный источник) в java.awt.Container.dispatchEventImpl (неизвестный источник) в java.awt.Component.dispatchEvent (Неизвестный источник) в java.awt.LightweightDispatcher.retargetMouseEvent (Неизвестный источник) в java.awt.LightweightDispatcher.processMouseEvent (Неизвестный источник) в java.awt.LightweightDispatcher.dispatchEvent (Неизвестный источник) в jvent.awpisНеизвестный источник) в java.awt.Window.dispatchEventImpl (Неизвестный источник) в java.awt.Component.dispatchEvent (Неизвестный источник) в java.awt.EventQueue.dispatchEventImpl (Неизвестный источник) в java.awt.EventQueue.access $ 000 (Источник) на java.awt.EventQueue $ 1.run (неизвестный источник) на java.awt.EventQueue $ 1.run (неизвестный источник) на java.security.AccessController.doPrivileged (собственный метод) на java.security.AccessControlContext $ 1.doIntersectionPrivilegeНеизвестный источник) в java.security.AccessControlContext $ 1.doIntersectionPrivilege (неизвестный источник) в java.awt.EventQueue $ 2.run (неизвестный источник) в java.awt.EventQueue $ 2.run (неизвестный источник) в java.security.AccessController.doPrivileged (собственный метод) в java.security.AccessControlContext $ 1.doIntersectionPrivilege (Unknown Source) в java.awt.EventQueue.dispatchEvent (Unknown Source) в java.awt.EventDispatchThread.pumpOneEventForFilters (Unknown Source) в java.awt.EventDispatchThread.pumpEventsForFilter (Unknown Source) в java.awt.EventDispatchThread.pumpEventsForHierarchy(Неизвестный источник) в java.awt.EventDispatchThread.pumpEvents (Неизвестный источник) в java.awt.EventDispatchThread.pumpEvents (Неизвестный источник) в java.awt.EventDispatchThread.run (Неизвестный источник)
IЯ получаю исключение NullPointerException в строке, где я установил
nText = nField.getText();
, но я все еще не уверен, почему не могу получить текст, который был вставлен в мой JTextField.Каждый пример, который я нашел, показывает, что это должно работать, но я не могу этого понять.Спасибо.