Поскольку вы фактически изменяете текстовую строку (значение) в методе modifyText()
элемента Text
GUI, это изменение текста вызовет ModifyEvent
, который снова вызывает метод modifyText()
. Таким образом, вы должны удалить этих слушателей, изменить текст на соответствующее значение и добавить этих слушателей обратно, иначе произойдет бесконечный цикл.
РЕДАКТИРОВАТЬ (на основе комментариев)
Ты прав. Сначала вы вводите ключ в поле Text
и вызывается verifyText()
. Когда этот метод заканчивается, и печатный текст утверждается, вызывается метод modifyText()
. И, как я сказал ранее, этот метод изменяет текстовую строку поля Text
методом setText()
. Поэтому, прежде чем текстовая строка может быть фактически изменена, вызывается verifyText()
и утверждается новая текстовая строка, затем идет метод modifyText()
, который должен фактически изменить текст внутри Text
элемента GUI, но он пытается вызвать setText()
из элемент и снова начинает круг.
Итак, вы вводите какое-то число в элемент Text
(например, '5'
), вызывается verifyText()
, а затем следует modifyText()
, вызывается setText()
, что снова вызывает verifyText()
и modifyText()
, вызывается setText()
и т. Д. Ах, да, здесь бесконечный цикл ..