| Пакет | flash.accessibility |
| Класс | public class AccessibilityProperties |
| Наследование | AccessibilityProperties Object |
| Подклассы | UIComponentAccImpl, UIComponentAccProps |
| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Можно прикрепить объект AccessibilityProperties к любому экранному объекту, но проигрыватель Flash Player будет читать объект AccessibilityProperties только для определенных объектов: SWF-файлы целиком (представленные классом DisplayObject.root, объектами контейнера DisplayObjectContainer и подклассами), кнопки (представленные SimpleButton и подклассами) и текстовые поля (представленные TextField и подклассами).
Свойство name этих объектов является самым важным задаваемым свойством, потому что навигация с использованием средств расширенного доступа осуществляется по именам объектов. Не путайте свойство AccessibilityProperties.name со свойством DisplayObject.name — это разные не связанные свойства. Свойство AccessibilityProperties.name является именем, читаемым вслух с помощью средств расширенного доступа, тогда как DisplayObject.name является именем переменной, доступной только в коде ActionScript.
Во Flash Professional во время разработки свойства объектов AccessibilityProperties подменяют соответствующие параметры, доступные на панели специальных возможностей.
Для определения, запущен ли проигрыватель Flash Player в окружении, поддерживающем средства расширенного доступа, используйте свойство Capabilities.hasAccessibility. При модификации объекта AccessibilityProperties необходимо вызвать метод Accessibility.updateProperties(), чтобы изменения вступили в силу.
Связанные элементы API
flash.display.DisplayObject.accessibilityProperties
flash.display.InteractiveObject.tabIndex
flash.system.Capabilities.hasAccessibility
| Свойство | Определено | ||
|---|---|---|---|
![]() | constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | |
| description : String
Позволяет назначить экранному объекту описание в файле презентации с расширенным доступом. | AccessibilityProperties | ||
| forceSimple : Boolean
При значении true предписывает проигрывателю Flash Player исключить дочерние объекты этого экранного объекта из файла презентации с расширенным доступом. | AccessibilityProperties | ||
| name : String
Позволяет назначить экранному объекту имя в файле презентации с расширенным доступом. | AccessibilityProperties | ||
| noAutoLabeling : Boolean
При значении, равном true, отключает систему автоматических подписей по умолчанию для проигрывателя Flash Player. | AccessibilityProperties | ||
| shortcut : String
Указывает на сочетание клавиш, связанное с этим экранным объектом. | AccessibilityProperties | ||
| silent : Boolean
При значении true исключает этот экранный объект из файла презентации с расширенным доступом. | AccessibilityProperties | ||
| Метод | Определено | ||
|---|---|---|---|
Создает новый объект AccessibilityProperties. | AccessibilityProperties | ||
![]() |
Показывает, определено ли заданное свойство для объекта. | Object | |
![]() |
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | |
![]() |
Показывает наличие заданного свойства и его перечисляемость. | Object | |
![]() |
Задает доступность динамического свойства для операций цикла. | Object | |
![]() |
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | |
![]() |
Возвращает строковое представление заданного объекта. | Object | |
![]() |
Возвращает элементарное значение заданного объекта. | Object | |
description | свойство |
public var description:String| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Позволяет назначить экранному объекту описание в файле презентации с расширенным доступом. Если на текущий момент имеется достаточно информации об объекте, то целесообразней выбрать короткое имя и поместить большую часть содержания в свойство description. Применяется к SWF-файлам целиком, контейнерам, кнопкам и тексту. Значение по умолчанию — пустая строка.
Во Flash Professional это свойство соответствует полю «Описание» на панели «Расширенный доступ».
forceSimple | свойство |
public var forceSimple:Boolean| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
При значении true предписывает проигрывателю Flash Player исключить дочерние объекты этого экранного объекта из файла презентации с расширенным доступом. Значение по умолчанию равно false. Применяется к SWF-файлам целиком и контейнерам.
name | свойство |
public var name:String| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Позволяет назначить экранному объекту имя в файле презентации с расширенным доступом. Применяется к SWF-файлам целиком, контейнерам, кнопкам и тексту. Не путайте с не связанным свойством DisplayObject.name. Значение по умолчанию — пустая строка.
Во Flash Professional это свойство соответствует полю «Имя» на панели «Расширенный доступ».
noAutoLabeling | свойство |
public var noAutoLabeling:Boolean| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
При значении true отключает систему автоматических подписей по умолчанию для проигрывателя Flash Player. Автоматические подписи могут вызвать обработку текстовых объектов внутри кнопок как имен кнопок и обработку текстовых объектов около текстового поля как имен текстового поля. Значение по умолчанию равно false. Применяется только к SWF-файлам целиком.
Значение свойства noAutoLabeling игнорируется, пока оно не будет определено перед первой проверкой SWF-файла средством обеспечения расширенного доступа. Если планируется установить для свойства noAutoLabeling значение true, необходимо сделать это в коде как можно раньше.
shortcut | свойство |
public var shortcut:String| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Указывает на сочетание клавиш, связанное с этим экранным объектом. Задайте данную строку только для элементов управления пользовательского интерфейса, которые ассоциированы с сочетанием клавиш. Применяется к контейнерам, кнопкам и тексту. Значение по умолчанию — пустая строка.
Примечание. Установка данного свойства не привязывает автоматически комбинации клавиш к данному объекту, необходимо это делать самостоятельно, например путем прослушивания события KeyboardEvent.
Синтаксис для данной строки использует длинные имена для управляющих клавиш и знак плюс (+), указывая на комбинацию клавиш. Примеры допустимых строк: Ctrl+F, Ctrl+Shift+Z и так далее.
silent | свойство |
public var silent:Boolean| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
При значении true исключает этот экранный объект из файла презентации с расширенным доступом. Значение по умолчанию равно false. Применяется к SWF-файлам целиком, контейнерам, кнопкам и тексту.
AccessibilityProperties | () | Конструктор |
public function AccessibilityProperties()| Язык версии: | ActionScript 3.0 |
| Версии среды выполнения: | AIR 1.0, Flash Player 9 |
Создает новый объект AccessibilityProperties.
AccessibilityExample, CustomAccessibleButton, CustomSimpleButton и ButtonDisplayState для создания меню, соответствующего требованиям доступности веб-контента и совместимого с основными программами экранного доступа. Основные функции класса AccessibilityProperties таковы:
- Вызовите
configureAssets, в результате чего будет создана специальная кнопка, а для нее будут заданы ярлык и описание. Это значения, которые программа экранного доступа отображает для конечного пользователя. - Вызовите функцию
setTimeOut(), чтобы дать проигрывателю Flash Player достаточно времени для обнаружения программы экранного доступа, прежде чем будут обновлены свойства.
Примечание. Вызовите setTimeout() перед проверкой Accessibility.active. чтобы дать проигрывателю Flash Player те 2 секунды, которые требуются ему для подключения к программе чтения экрана (если доступна). Если не будет выделено достаточно времени задержки, вызов setTimeout может возвратить значение false, даже если существует доступная программа чтения экрана.
В следующем примере показана обработка метода Accessibility.updateProperties() только в том случае, если вызов Accessibility.active возвращает true, что происходит лишь когда проигрыватель Flash Player подключен к активной программе чтения экрана. Если метод updateProperties вызывается без средства чтения с экрана, то вызывается исключение IllegalOperationError.
package {
import flash.display.Sprite;
import flash.accessibility.Accessibility;
import flash.utils.setTimeout;
public class AccessibilityPropertiesExample extends Sprite {
public static const BUTTON_WIDTH:uint = 90;
public static const BUTTON_HEIGHT:uint = 20;
private var gutter:uint = 5;
private var menuLabels:Array = new Array("PROJECTS", "PORTFOLIO", "CONTACT");
private var menuDescriptions:Array = new Array("Learn more about our projects"
, "See our portfolio"
, "Get in touch with our team");
public function AccessibilityPropertiesExample() {
configureAssets();
setTimeout(updateAccessibility, 2000);
}
private function updateAccessibility():void {
trace("Accessibility.active: " + Accessibility.active);
if(Accessibility.active) {
Accessibility.updateProperties();
}
}
private function configureAssets():void {
var child:CustomAccessibleButton;
for(var i:uint; i < menuLabels.length; i++) {
child = new CustomAccessibleButton();
child.y = (numChildren * (BUTTON_HEIGHT + gutter));
child.setLabel(menuLabels[i]);
child.setDescription(menuDescriptions[i]);
addChild(child);
}
}
}
import flash.accessibility.AccessibilityProperties;
import flash.display.Shape;
import flash.display.SimpleButton;
import flash.display.Sprite;
import flash.events.Event;
import flash.text.TextFormat;
import flash.text.TextField;
class CustomAccessibleButton extends Sprite {
private var button:SimpleButton;
private var label1:TextField;
private var description:String;
private var _name:String;
public function CustomAccessibleButton(_width:uint = 0, _height:uint = 0) {
_width = (_width == 0) ? AccessibilityPropertiesExample.BUTTON_WIDTH : _width;
_height = (_height == 0) ? AccessibilityPropertiesExample.BUTTON_HEIGHT : _height;
button = buildButton(_width, _height);
label1 = buildLabel(_width, _height);
addEventListener(Event.ADDED, addedHandler);
}
private function addedHandler(event:Event):void {
trace("addedHandler: " + name);
var accessProps:AccessibilityProperties = new AccessibilityProperties();
accessProps.name = this._name;
accessProps.description = description;
accessibilityProperties = accessProps;
removeEventListener(Event.ADDED, addedHandler);
}
private function buildButton(_width:uint, _height:uint):SimpleButton {
var child:SimpleButton = new CustomSimpleButton(_width, _height);
addChild(child);
return child;
}
private function buildLabel(_width:uint, _height:uint):TextField {
var format:TextFormat = new TextFormat();
format.font = "Verdana";
format.size = 11;
format.color = 0xFFFFFF;
format.align = TextFormatAlign.CENTER;
format.bold = true;
var child:TextField = new TextField();
child.y = 1;
child.width = _width;
child.height = _height;
child.selectable = false;
child.defaultTextFormat = format;
child.mouseEnabled = false;
addChild(child);
return child;
}
public function setLabel(text:String):void {
label1.text = text;
this._name = text;
}
public function setDescription(text:String):void {
description = text;
}
}
class CustomSimpleButton extends SimpleButton {
private var upColor:uint = 0xFFCC00;
private var overColor:uint = 0xCCFF00;
private var downColor:uint = 0x00CCFF;
public function CustomSimpleButton(_width:uint, _height:uint) {
downState = new ButtonDisplayState(downColor, _width, _height);
overState = new ButtonDisplayState(overColor, _width, _height);
upState = new ButtonDisplayState(upColor, _width, _height);
hitTestState = new ButtonDisplayState(upColor, _width, _height);
useHandCursor = true;
}
}
class ButtonDisplayState extends Shape {
private var bgColor:uint;
private var _width:uint;
private var _height:uint;
public function ButtonDisplayState(bgColor:uint, _width:uint, _height:uint) {
this.bgColor = bgColor;
this._width = _width;
this._height = _height;
draw();
}
private function draw():void {
graphics.beginFill(bgColor);
graphics.drawRect(0, 0, _width, _height);
graphics.endFill();
}
}
}
Tue Jun 12 2018, 11:34 AM Z
Скрыть унаследованные общедоступные свойства
Показать унаследованные общедоступные свойства