Adobe® Flash® Platform 用 ActionScript® 3.0 リファレンスガイド
ホーム  |  パッケージおよびクラスリストの非表示 |  パッケージ  |  クラス  |  新機能  |  索引  |  付録  |  英語で表示される理由
フィルター: サーバーからデータを取得しています...
サーバーからデータを取得しています...
flash.accessibility 

AccessibilityProperties  - AS3

パッケージflash.accessibility
クラスpublic class AccessibilityProperties
継承AccessibilityProperties Inheritance Object
サブクラス UIComponentAccImpl, UIComponentAccProps

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

AccessibilityProperties クラスを使用すれば、アクセシビリティ補助(スクリーンリーダーなど)への Flash オブジェクトの提示方法を制御できます。

任意の表示オブジェクト に AccessibilityProperties オブジェクトを付加できますが、Flash Player は特定のオブジェクトに関連した AccessibilityProperties オブジェクトだけを読み取ります。これに該当するオブジェクトは、SWF ファイル全体(DisplayObject.root)、コンテナオブジェクト(DisplayObjectContainer とサブクラス)、ボタン(SimpleButton とサブクラス)、およびテキスト(TextField とサブクラス)です。

アクセシビリティ補助はナビゲーションの基本的方法としてオブジェクトの名前をユーザーに提供するため、これらのオブジェクトの name プロパティは指定するプロパティの中で最も重要です。AccessibilityProperties.nameDisplayObject.name を混同しないでください。この 2 つは互いに無関係な別個のプロパティです。AccessibilityProperties.name プロパティはアクセシビリティ補助で読み上げられる名前であるのに対し、DisplayObject.name は基本的に、ActionScript コードでのみ認識される変数名です。

Flash Professional では、AccessibilityProperties オブジェクトのプロパティは、オーサリング時にアクセシビリティパネルで使用できる設定をオーバーライドします。

Flash Player がアクセシビリティ補助をサポートする環境で実行されているかどうかを確認するには、Capabilities.hasAccessibility プロパティを使用します。AccessibilityProperties オブジェクトを変更した場合、変更内容を有効にするには、Accessibility.updateProperties() メソッドを呼び出す必要があります。

例を表示

関連する API エレメント



パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : 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
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
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 ファイルを調べるより前に指定しない限り、無視されます。noAutoLabelingtrue に設定する場合は、コード内のできるだけ早い段階で設定する必要があります。

shortcut

プロパティ 
public var shortcut:String

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 1.0, Flash Player 9

この表示オブジェクトに関連したキーボードショートカットを示します。ショートカットキーに既に関連付けられた UI コントロールに対してのみ、このストリングを提供してください。コンテナ、ボタン、テキストが対象となります。デフォルト値は空のストリングです。

注意:このプロパティを割り当てても、特定のキー操作の組み合わせが自動的にこのオブジェクトに割り当てられるわけではありません。そうするためには、例えば 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 オブジェクトを作成します。

AccessibilityPropertiesExample.as

次のコードの例では、AccessibilityExampleCustomAccessibleButtonCustomSimpleButton、および ButtonDisplayState クラスを使用して、一般的なスクリーンリーダーとの連携が可能なアクセシビリティ準拠メニューを作成します。AccessibilityProperties クラスの主な機能は次のとおりです。
  1. configureAssets を呼び出すことにより、カスタムボタンを作成して、ボタンのラベルと説明を設定します。これらの値はスクリーンリーダーによってエンドユーザーに伝送されます。
  2. 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();
    }
}
}




[ X ]英語で表示される理由
ActionScript 3.0 リファレンスガイドのコンテンツが英語で表示されます。

ActionScript 3.0 リファレンスガイドのすべての部分がすべての言語に翻訳されているわけではありません。言語エレメントが翻訳されていない場合、そのエレメントは英語で表示されます。例えば、ga.controls.HelpBox クラスはどの言語にも訳されていません。このため、リファレンスガイドの日本語バージョンでは、ga.controls.HelpBox クラスは英語で表示されます。