Ожидание ввода пользователя в JApplet из другого класса - PullRequest
3 голосов
/ 28 октября 2011

У меня есть два класса.Один создает графический интерфейс в JApplet, а другой класс принимает пользовательский ввод из апплета и выполняет с ним вычисления.

Класс апплета создает графический интерфейс и сообщает классу вычислений о запуске.Затем класс вычисления вызывает метод из класса апплета, чтобы запросить ввод данных пользователем.Затем этот метод прослушивает действие из JTextField для возврата в класс вычислений.

Но проблема в том, что когда вы запускаете программу, она на самом деле не ждет, когда пользователь введет что-то в текстовое поле.В результате класс вычисления получает нулевой ввод.

Как я могу это исправить?

Я пытался использовать JOptionPane.showInputDialog вместо ActionListener в методе, и это работает.Но я не хочу этим пользоваться;главным образом потому, что это как всплывающее окно, и я хочу, чтобы пользователь вводил данные непосредственно в апплет.

1 Ответ

5 голосов
/ 28 октября 2011

Добавьте ActionListener к JTextField в апплете. Когда событие вызывается (обычно, когда пользователь нажимает «Enter»), вызовите класс вычисления, используя String в текстовом поле.

Или, говоря иначе. Класс, являющийся источником события (апплет), должен вызывать метод класса вычисления. Не должно быть наоборот.

...