Как создать Textfield с прокруткой в ​​AS3 и FlashDevelop?


Я работаю над флеш-игрой на основе проекта AS3 с использованием FlashDevelop.
Мне нужно текстовое поле с полосой прокрутки.
Мне удалось создать редактируемое TextField, но я не могу найти способ добавить
вертикальная полоса прокрутки.

Спасибо,
SW.

3 ответа

Решение

Среда выполнения Flash не предоставляет никаких собственных элементов управления пользовательского интерфейса (кнопки, полосы прокрутки, поля со списком и т. Д.), Поэтому вы должны либо использовать, либо писать компоненты, разработанные в AS3.

Adobe Flash Professional включает в себя набор компонентов пользовательского интерфейса; Flex Framework предлагает множество (и тяжеловесных) компонентов, но вы должны перейти на Flex с нуля. У обоих есть серьезные плюсы и минусы, но по крайней мере их код интересен для изучения.

В Интернете вы найдете множество (часто плохих) сценариев полосы прокрутки - это хорошее упражнение для изучения Flash.

Обратите внимание, что у вас есть 2 способа прокрутки текста:

  • TextFields имеет свойство прокрутки для прокрутки текста построчно,
  • или установите маску (или лучше scrollRect) для прокрутки произвольного содержимого, включая длинный TextField.

Если вы добавите flex_sdk_4.1\frameworks\libs\framework.swc в библиотеки SWC (в свойствах проекта -> параметры компилятора) вы можете импортировать и использовать mx.controls.VScrollBar

Вам нужно будет разработать его самостоятельно или найти бесплатное решение в Интернете. Как правило, оно включает очень высокое текстовое поле, которое раскрывается только частично из-за маски. Затем полоса прокрутки управляет положением Y текстового поля, поэтому маска отображает различные части текстового поля.

Другие вопросы по тегам