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

0

Компонент RadioButton позволяет поставить пользователя перед выбором единственного варианта из нескольких. Этот компонент должен использоваться в группе, где существует не менее двух экземпляров RadioButton. В любое время можно выбрать только одного члена данной группы. Выбор переключателя в группе снимает выделение с выбранного в данный момент переключателя в этой группе. Параметр groupName задается для того, чтобы указать, к какой группе принадлежит переключатель.

Переключатель является основной частью многих приложений с веб-формами. Переключатели можно использовать, когда пользователь должен выбрать один вариант из нескольких. Например, переключатели можно использовать в форме, чтобы узнать у заказчика, какой кредитной картой он хочет воспользоваться.

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

Переключатель можно включить или отключить. Отключенный переключатель не реагирует на информацию, поступающую с клавиатуры или мыши. Когда пользователь нажимает на группу компонентов RadioButton или переходит к ней с помощью клавиши Tab, в фокусе оказывается только выделенный переключатель. После этого пользователь может управлять им с помощью следующих клавиш.

Клавиша

Описание

"Стрелка вверх"/"Стрелка влево"

Выделение перемещается на предыдущий переключатель в группе.

"Стрелка вниз"/"Стрелка вправо"

Выделение перемещается на следующий переключатель в группе.

Tab

Фокус перемещается с группы переключателей на следующий компонент.

Дополнительные сведения об управлении фокусом см. в описании класса IFocusManager и классу FocusManager в руководствах Справочник по языку ActionScript 3.0 и компонентам и «Работа с FocusManager» на странице 29.

Интерактивный просмотр каждого элемента RadioButton в рабочей области отражает изменения, которые были внесены в параметры в Инспекторе свойств или Инспекторе компонентов во время разработки. Однако в интерактивном просмотре не отображается взаимоисключение выделения. Если задать значение true параметрам selected двух переключателей в одной группе, они оба отображаются выбранными, даже если только последний созданный экземпляр выбран во время выполнения. Дополнительные сведения см. в разделе «Параметры компонента RadioButton» на странице 81.

Когда в приложение добавляется компонент RadioButton, его можно сделать доступным для программ чтения с экрана путем добавления следующих строк кода.

import fl.accessibility.RadioButtonAccImpl; RadioButtonAccImpl.enableAccessibility();

Расширенный доступ для компонента включается только один раз, независимо от числа имеющихся экземпляров. Дополнительные сведения см. в главе 18 "Создание содержимого с расширенной доступностью" в руководстве "Использование Flash".

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

В Инспекторе свойств или Инспекторе компонентов можно задать следующие параметры разработки для каждого экземпляра компонента RadioButton : groupName, label, LabelPlacement, selected и value. Каждый из этих параметров имеет соответствующее свойство ActionScript с тем же именем. Сведения о возможных значениях для этих параметров см. в описании класса RadioButton в Справочнике по языку ActionScript 3.0 и компонентам.

Можно написать код ActionScript, чтобы задать дополнительные параметры для экземпляров RadioButton с помощью методов, свойств и событий класса RadioButton.

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

Ниже описывается процедура добавления компонентов RadioButton в приложение в ходе разработки. В данном примере экземпляры RadioButton используются для выбора ответа "да" или "нет" на заданный вопрос. Данные, полученные от RadioButton, отображаются в экземпляре TextArea.

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

2   Перетащите два компонента RadioButton с панели "Компоненты" в рабочую область.

3   Выберите первый переключатель. В Инспекторе свойств присвойте ему имя экземпляра yesRb и имя группы rbGroup.

4   Выберите второй переключатель. В Инспекторе свойств присвойте ему имя экземпляра noRb и имя группы

rbGroup.

5   Перетащите компонент TextArea с панели "Компоненты" в рабочую область и присвойте ему имя экземпляра aTa.

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

ActionScript.

yesRb.label = "Yes"; yesRb.value = "For"; noRb.label = "No"; noRb.value = "Against";

yesRb.move(50, 100); noRb.move(100, 100); aTa.move(50, 30);

noRb.addEventListener(MouseEvent.CLICK, clickHandler);

yesRb.addEventListener(MouseEvent.CLICK, clickHandler);

function clickHandler(event:MouseEvent):void {

aTa.text = event.target.value;

}

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

Создание компонента RadioButton с помощью ActionScript

В этом примере с помощью ActionScript создается три экземпляра RadioButton для красного, синего и зеленого цветов и рисуется серое окно. Свойство value каждого экземпляра RadioButton определяет шестнадцатеричное значение цвета, связанное с данным переключателем. Когда пользователь щелкает по одному из экземпляров RadioButton, функция clickHandler() вызывает метод drawBox() и передает цвет из свойства value экземпляра RadioButton для изменения цвета серого окна.

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

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

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

ActionScript.

import fl.controls.RadioButton;

import fl.controls.RadioButtonGroup;

var redRb:RadioButton = new RadioButton(); var blueRb:RadioButton = new RadioButton(); var greenRb:RadioButton = new RadioButton();

var rbGrp:RadioButtonGroup = new RadioButtonGroup("colorGrp");

var aBox:MovieClip = new MovieClip();

drawBox(aBox, 0xCCCCCC);

addChild(redRb); addChild(blueRb); addChild(greenRb); addChild(aBox);

redRb.label = "Red"; redRb.value = 0xFF0000; blueRb.label = "Blue"; blueRb.value = 0x0000FF; greenRb.label = "Green"; greenRb.value = 0x00FF00;

redRb.group = blueRb.group = greenRb.group = rbGrp;

redRb.move(100, 260); blueRb.move(150, 260); greenRb.move(200, 260);

rbGrp.addEventListener(MouseEvent.CLICK, clickHandler);

function clickHandler(event:MouseEvent):void {

drawBox(aBox, event.target.selection.value);

}

function drawBox(box:MovieClip,color:uint):void { box.graphics.beginFill(color, 1.0); box.graphics.drawRect(125, 150, 100, 100); box.graphics.endFill();

}

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

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

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

По теме:

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