Главная » ActionScript » Использование компонента UIScrollBar

0

Компонент UIScrollBar позволяет добавлять полосу прокрутки к текстовому полю. Полосу прокрутки можно добавить к текстовому полю в процессе разработки или во время выполнения с помощью ActionScript. Чтобы воспользоваться компонентом UIScrollBar, создайте текстовое поле в рабочей области, перетащите компонент UIScrollBar с панели "Компоненты" в любой квадрант ограничивающего прямоугольника текстового поля.

Если длина полосы прокрутки меньше общего размера стрелок прокрутки, компонент отображается неправильно. Одна кнопка со стрелкой скрывается под другой. Flash не выводит ошибки об этой проблеме. В таком случае лучше скрыть полосу прокрутки с помощью ActionScript. Если размера полосы прокрутки недостаточно для отображения ползунка, Flash скрывает его.

Компонент UIScrollBar выполняет те же функции, что и другие полосы прокрутки. Он содержит кнопки со стрелками по обоим концам, между которыми расположена полоса прокрутки и ползунок. Компонент можно расположить по любому краю текстового поля для прокручивания по вертикали и горизонтали.

Дополнительные сведения о TextField см. в описании класса TextField в Справочнике по языку ActionScript 3.0 и компонентам.

Взаимодействие пользователей с компонентом UIScrollBar

В отличие от многих других компонентов, UIScrollBar может получать непрерывный ввод данных мыши, например, когда пользователь удерживает кнопку мыши, не требуя повторных щелчков.

Компонент UIScrollBar не поддерживает взаимодействие с клавиатурой.

Параметры компонента UIScrollBar

В Инспекторе свойств или Инспекторе компонентов можно задать следующие параметры разработки для каждого экземпляра компонента UIScrollBar : direction и scrollTargetName. Каждый из этих параметров имеет соответствующее свойство ActionScript с тем же именем.

Можно написать код ActionScript, чтобы задать дополнительные параметры для экземпляров UIScrollBar с использованием их методов, свойств и событий. Дополнительные сведения см. в описании класса UIScrollBar в Справочнике по языку ActionScript 3.0 и компонентам.

Создание приложения с компонентом UIScrollBar

Ниже описывается процедура добавления компонента UIScrollBar в приложение в ходе разработки.

1   Создайте новый документ Flash (ActionScript 3.0).

2   Создайте динамическое текстовое поле, достаточно высокое для одной или двух строк текста, и присвойте ему имя экземпляра myText в Инспекторе свойств.

3   В Инспекторе свойств задайте для свойства LineType поля ввода текста значение Multiline или

MultilineNoWrap, если планируется использовать горизонтальную полосу прокрутки.

4   Откройте панель "Действия", выберите "Кадр 1" на главной временной шкале и введите следующий код ActionScript для заполнения свойства text таким образом, чтобы пользователю потребовалась прокрутка для его просмотра.

myText.text="When the moon is in the seventh house and Jupiter aligns with Mars, then peace will guide the planet and love will rule the stars."

Примечание. Убедитесь, что текстовое поле в рабочей области достаточно маленькое, чтобы весь текст нельзя было просмотреть без прокрутки. Если оно будет слишком большое, полоса прокрутки может не появиться или на ней не будет ползунка (для прокручивания содержимого).

5   Убедитесь, что включена привязка к объектам ("Просмотр" > "Привязка"> "Привязка к объектам").

6   Перетащите экземпляр UIScrollBar с панели "Компоненты" в текстовое поле ввода рядом с тем краем, у которого нужно разместить полосу прокрутки. Чтобы компонент правильно присоединился к текстовому полю, кнопку мыши нужно отпустить, когда он будет перекрывать поле. Присвойте компоненту имя экземпляра mySb.

Свойство scrollTargetName автоматически заполняется именем экземпляра TextField, которое задано в Инспекторах свойств и компонентов. Если его нет на вкладке "Параметры", значит при размещении компонент UIScrollBar не достаточно перекрывал текстовое поле.

7   Выберите "Управление" > "Тестировать ролик".

Создание экземпляра компонента UIScrollBar с помощью ActionScript

Экземпляр UIScrollBar можно создать с помощью ActionScript и связать его с текстовым полем во время выполнения. В следующем примере создается горизонтальный экземпляр UIScrollBar и присоединяется к нижнему краю текстового поля myTxt, в которое загружается текст из URL. Кроме того, размер полосы прокрутки определяется по размеру текстового поля.

1   Создайте новый документ Flash (ActionScript 3.0).

2   Перетащите компонент ScrollBar на панель "Библиотека".

3   Откройте панель "Действия", выберите "Кадр 1" на главной временной шкале и введите следующий код

ActionScript.

import flash.net.URLLoader; import fl.controls.UIScrollBar; import flash.events.Event;

var myTxt:TextField = new TextField();

myTxt.border = true; myTxt.width = 200; myTxt.height = 16; myTxt.x = 200; myTxt.y = 150;

var mySb:UIScrollBar = new UIScrollBar();

mySb.direction = "horizontal";

// Size it to match the text field. mySb.setSize(myTxt.width, myTxt.height);

// Move it immediately below the text field. mySb.move(myTxt.x, myTxt.height + myTxt.y);

// put them on the Stage addChild(myTxt); addChild(mySb);

// load text

var loader:URLLoader = new URLLoader();

var request:URLRequest = new URLRequest("http://www.helpexamples.com/flash/lorem.txt");

loader.load(request);

loader.addEventListener(Event.COMPLETE, loadcomplete);

function loadcomplete(event:Event) {

// move loaded text to text field myTxt.text = loader.data;

// Set myTxt as target for scroll bar.

mySb.scrollTarget = myTxt;

}

4   Выберите "Управление" > "Тестировать ролик".

Источник: Использование компонентов ActionScript 3.0 – 2008

По теме:

  • Комментарии