ActionScript® 3.0 Referenzhandbuch für die Adobe® Flash®-Plattform
Home  |  Liste der Pakete und Klassen ausblenden |  Pakete  |  Klassen  |  Neue Funktionen  |  Stichwortverzeichnis  |  Anhänge  |  Warum auf Englisch?
Filter: Daten werden vom Server abgerufen...
Daten werden vom Server abgerufen...
flash.accessibility 

Accessibility  - AS3

Paketflash.accessibility
Klassepublic final class Accessibility
VererbungAccessibility Inheritance Object

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9

Die Accessibility-Klasse verwaltet die Kommunikation mit Bildschirmleseprogrammen. Bildschirmleseprogramme sind eine Art unterstützende Technologie für Sehbehinderte, die auf diese Weise eine akustische Umsetzung des Bildschirminhalts erhalten. Die Methoden der Accessibility-Klasse sind statisch, d. h., Sie müssen keine Instanz der Klasse erzeugen, um ihre Methoden verwenden zu können.

Unterstützung für mobile Browser: Diese Klasse wird in mobilen Browsern nicht unterstützt.

Unterstützung von AIR-Profilen: Diese Funktion wird auf allen Desktopbetriebssystemen unterstützt, jedoch nicht auf mobilen Geräten oder Geräten mit AIR für TV. Weitere Informationen zum AIR-Support über mehrere Profile finden Sie unter Unterstützung von AIR-Profilen.

Verwenden Sie die DisplayObject.accessibilityProperties-Eigenschaft, um die Eingabehilfeneigenschaften (für die Barrierefreiheit) eines bestimmten Objekts abzurufen und festzulegen, z. B. für eine Schaltfläche, einen Movieclip oder ein Textfeld. Um zu ermitteln, ob der Player bzw. die Laufzeitumgebung in einer Umgebung ausgeführt wird, die Eingabehilfen/Barrierefreiheit unterstützt, verwenden Sie die Capabilities.hasAccessibility-Eigenschaft.

Hinweis: AIR 2 unterstützt das Bildschirmleseprogramm JAWS 11 (oder höher). Weitere Informationen finden Sie unter http://www.adobe.com/de/accessibility/.

Beispiele anzeigen

Weitere Informationen

Verwandte API-Elemente



Öffentliche Eigenschaften
 EigenschaftDefiniert von
  active : Boolean
[statisch] [schreibgeschützt] Gibt an, ob ein Bildschirmleseprogramm aktiv ist und ein Datenaustausch mit der Anwendung stattfindet.
Accessibility
 Inheritedconstructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz.
Object
Öffentliche Methoden
 MethodeDefiniert von
 Inherited
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde.
Object
 Inherited
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde.
Object
 Inherited
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann.
Object
 Inherited
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest.
Object
 Inherited
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas.
Object
 Inherited
Gibt das angegebene Objekt als String zurück.
Object
  
[statisch] Weist Flash Player an, alle mithilfe der DisplayObject.accessibilityProperties-Eigenschaft vorgenommenen Änderungen bezüglich Eingabehilfen/Barrierefreiheit zu übernehmen.
Accessibility
 Inherited
Gibt den Grundwert des angegebenen Objekts zurück.
Object
Eigenschaftendetails

active

Eigenschaft
active:Boolean  [schreibgeschützt]

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9

Gibt an, ob ein Bildschirmleseprogramm aktiv ist und ein Datenaustausch mit der Anwendung stattfindet. Verwenden Sie diese Methode, wenn Sie das Verhalten der Anwendung bei Verwendung eines Bildschirmleseprogramms ändern möchten.

Nachdem diese Eigenschaft auf true gesetzt wurde, behält sie den Wert true für die Dauer der Anwendung. (Normalerweise schaltet ein Benutzer ein Bildschirmleseprogramm nicht aus, nachdem er es eingeschaltet hat.)

Hinweis: Warten Sie vor dem Aufruf dieser Methode 1 oder 2 Sekunden, nachdem Sie Ihre AIR-Anwendung gestartet haben oder nach dem ersten Erscheinen des Flash® Player-Fensters, in dem Ihr Dokument abgespielt wird. Andernfalls wird möglicherweise der Wert false zurückgegeben, selbst wenn ein aktiver Eingabehilfen-Client vorhanden ist. Dazu kommt es wegen eines asynchronen Kommunikationsmechanismus zwischen Eingabehilfen-Clients und Flash Player oder AIR.

Um zu ermitteln, ob der Player in einer Umgebung ausgeführt wird, die Bildschirmleseprogramme unterstützt, verwenden Sie die Capabilities.hasAccessibility-Eigenschaft.



Implementierung
    public static function get active():Boolean

Verwandte API-Elemente

Methodendetails

updateProperties

()Methode
public static function updateProperties():void

Sprachversion: ActionScript 3.0
Laufzeitversionen: AIR 1.0, Flash Player 9

Weist Flash Player an, alle mithilfe der DisplayObject.accessibilityProperties-Eigenschaft vorgenommenen Änderungen bezüglich Eingabehilfen/Barrierefreiheit zu übernehmen. Sie müssen diese Methode aufrufen, damit die Änderungen wirksam werden.

Wenn Sie die Eingabehilfeneigenschaften für die Barrierefreiheit mehrerer Objekte ändern, ist nur ein einziger Aufruf der Accessibility.updateProperties()-Methode erforderlich. Mehrere Aufrufe können zu verminderter Leistung und fehlerhaften Ergebnissen der Bildschirmleserausgabe führen.


Auslöser
IllegalOperationError — Barrierefreiheit/Eingabehilfen werden in dieser Flash Player-Version nicht unterstützt. Rufen Sie die Accessibility.updateProperties()-Methode nicht auf, wenn die flash.system.Capabilities.hasAccessibility-Eigenschaft auf false gesetzt ist.

Verwandte API-Elemente

AccessibilityExample.as

Im folgenden Beispiel wird mit den Beispielklassen AccessibilityExample, CustomAccessibleButton, CustomSimpleButton und ButtonDisplayState ein Menü erstellt, das mit Eingabehilfen-/Barrierefreiheit kompatibel ist und mit den meisten Bildschirmleseprogrammen funktioniert. In diesem Beispiel werden die folgenden Aufgaben ausgeführt:
  1. Überwacht die Accessibility.active-Eigenschaft, um zu ermitteln, ob derzeit ein Bildschirmleseprogramm aktiv ist und ein Datenaustausch mit dem Player stattfindet.
  2. Wenn die active-Eigenschaft true lautet, ruft das Beispiel die updateProperties()-Methode auf, um die für die Eingabehilfen/Barrierefreiheit relevanten Änderungen anzuwenden, die in diesem Beispiel an den Schaltflächen vorgenommen wurden.
  3. Das Beispiel ruft die flash.utils.setTimeout()-Methode auf und gibt an, dass die updateAccessibility()-Abschlussmethode nach zwei Sekunden aufgerufen werden soll.

Hinweis: Rufen Sie setTimeout() auf, bevor Sie Accessibility.active aktivieren, um Flash Player die zwei Sekunden zu geben, die die Anwendung zum Herstellen der Verbindung zu einem Bildschirmleseprogramm benötigt (falls vorhanden). Wenn Sie keine ausreichende Zeitverzögerung angeben, wird beim Aufrufen von setTimeout ggf. auch dann false zurückgegeben, wenn ein Bildschirmleseprogramm verfügbar ist.

Das folgende Beispiel verarbeitet die Accessibility.updateProperties()-Methode nur, wenn beim Aufrufen von Accessibility.active der Wert true zurückgegeben wird. Dies ist nur der Fall, wenn Flash Player gerade über eine Verbindung zu einem aktiven Bildschirmleseprogramm verfügt. Wenn Sie updateProperties aufrufen, ohne dass ein Bildschirmleseprogramm aktiv ist, wird eine IllegalOperationError-Ausnahme ausgelöst.

package {
    import flash.display.Sprite;
    import flash.accessibility.Accessibility;
    import flash.utils.setTimeout;
    
    public class AccessibilityExample 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 AccessibilityExample() {
            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 label:TextField;
    private var description:String;
    private var _name:String;
        
    public function CustomAccessibleButton(_width:uint = 0, _height:uint = 0) {
        _width = (_width == 0) ? AccessibilityExample.BUTTON_WIDTH : _width;
        _height = (_height == 0) ? AccessibilityExample.BUTTON_HEIGHT : _height;
        
        button = buildButton(_width, _height);
        label = buildLabel(_width, _height);
            
        addEventListener(Event.ADDED, addedHandler);
    }
        
    private function addedHandler(event:Event):void {
        trace("addedHandler: " + this._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 {
        label.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 ]Warum auf Englisch?
Inhalt des ActionScript 3.0-Referenzhandbuchs wird in englischer Sprache angezeigt

Nicht alle Teile des ActionScript 3.0-Referenzhandbuchs wurden in alle Sprachen übersetzt. Wenn der Text zu einem Sprachelement nicht übersetzt wurde, wird er auf Englisch angezeigt. Zum Beispiel wurden die Informationen zur ga.controls.HelpBox-Klasse nicht in andere Sprachen übersetzt. In der deutschen Version des Referenzhandbuchs erscheint der Abschnitt zur ga.controls.HelpBox-Klasse deshalb auf Englisch.