Я делаю простую игру "Угадай число" с графическим интерфейсом. Мне нужно подождать в цикле, ожидая, пока пользователь введет число в текстовое поле и нажмет «ОК». Как мне ждать события внутри цикла?
Примечание: я не хочу сообщений. Это делается в главном окне, поэтому необходимо дождаться ввода.
РЕДАКТИРОВАТЬ: Я должен был объяснить себя лучше. Я знаю, что внутри GUI есть петля. Я хочу еще один цикл внутри метода. Может быть, есть лучший способ сделать это. Я мог бы написать код в обработчике событий кнопки, теперь, когда я об этом думаю. Хотя мне нужны глобальные переменные. Как бы то ни было, я подумаю об этом, но надеюсь, теперь мой вопрос прояснится.
РЕДАКТИРОВАТЬ 2: Извините, что мой вопрос не был ясным, и редактирование не сильно помогло. Во-первых, код слишком велик для размещения здесь. Вероятно, мне придется опубликовать снимок экрана с графическим интерфейсом, так что он будет бесполезен. По сути, у меня есть два поля: «Максимальное количество» и «Количество разрешенных предположений». Пользователь вводит эти два и нажимает кнопку «Играть». Становится доступной новая панель с текстовым полем и кнопкой «Угадай». Пользователь вводит предположение, и программа проверяет, правильно ли оно.
Цель второго бесконечного цикла - избежать глобальных переменных. Смотрите, каждый раз, когда пользователь нажимает кнопку «Играть», игра должна генерировать новое случайное число в качестве правильного предположения. Если все сделано внутри метода, нет проблем. Но если обработчик события кнопки «Угадай» вызывается несколько раз, число должно быть сохранено как переменная экземпляра формы. Конечно, это не имеет большого значения, но я думаю, что число должно быть свойством метода, направляющего текущую игру, а не формы.
Мне бы также пришлось отслеживать оставшееся количество догадок вне метода. Опять же, это не страшно. Я просто хочу избегать глобалов, если смогу.
Опять же, мне жаль, что мой вопрос не был слишком ясным. Я немного устал, и мне не хотелось писать слишком много. Если это все еще не ясно, не беспокойтесь. Я подумаю о чем-то.