Проблема ввода текстового поля Java - PullRequest
0 голосов
/ 24 октября 2019

Поэтому я пытаюсь, чтобы пользователи вводили ответ на вопрос через текстовое поле, но, как я его настраивал, поле имени хранится только внутри класса ActionListener, а не класса QName. Я проверил, пытаясь вывести имя с помощью функции Name (). У кого-нибудь есть идеи о том, как я могу извлечь информацию и сохранить ее в поле имени QName? Заранее спасибо

Код для моей функции QName Код с нулевым выводом

1 Ответ

0 голосов
/ 24 октября 2019

Причина, по которой ваше поле name является нулевым, заключается в том, что при наборе текста в текстовом поле не генерируются события, которые перехватываются связанным слушателем.

Вы, кажется, подключили ActionListener непосредственно кваш JTextField. Более типичная (и для ваших целей, более правильная) реализация заключается в том, чтобы связать слушателя с кнопкой в ​​вашем объекте QName.

Чтобы исправить код, вам нужно будет создать кнопку. Предположим, вы называете это «ОК». Затем свяжите ActionListener с кнопкой вместо текстового поля. Затем ваш пользователь может ввести имя персонажа и нажать ОК. В свою очередь, ваш слушатель обнаружит нажатие кнопки и установит name для содержимого текстового поля.

Я отправлю пример кода, но я не собираюсь вводить весь код из вашей картинки(это еще одна причина, по которой вы не публикуете фотографии).

...