Есть множества случаев, в которых вам может понадобится дать пользователю возможность вводить текст привычным способом, принимая во внимания системные настройки и предоставляя возможность мелких изменений (таких как передвижение курсора по тексту). Такие случаи включают в себя чаты, консольные интерфейсы, поля ввода текста, и прочее. Этот пример покрывает большинство типичных потребностей для таких вещей довольно коротким (менее 70 строк) и понятным кодом. Он включает в себя следующие особенности:
- Сохраняет текущий текст при потере фокуса окна. Если вам доводилось работать с вводом текста в GameMaker, возможно вы уже заметили это неприятное стандартное поведение.
- Позволяет перемещать курсор по вводимой строке (кнопки влево / вправо / home / end)
- Позволяет удалять символы после курсора с помощью Delete (почему я не вижу этого во многих играх?)
- Может быть легко модифицирован для добавления дополнительных сочетаний клавиш и функций
Пример включает в себя непосредственное поле ввода и простой список, выводящий вводимые строки по нажатию Enter.
Ссылка не работает(
Исправил.
Всё-таки не перестаю удивляться тому, как натыкаюсь на примеры и советы от YAL после запросов браузера. Когда вижу автора статьи, заранее знаю, что что-то полезное тут узнаю.