Adobe Flash Professional Version MX und höher
Adobe Flex
Die Technik bezieht sich auf:
Siehe User Agent Support for Flash für allgemeine Informationen zur Unterstützung durch Benutzeragenten.
Das Ziel dieser Technik ist es, Untertitel (captions) für DataGrids durch Software zu verbinden, wenn Untertitel in der Darstellung zur Verfügung gestellt werden. Normalerweise ist die Caption für eine Tabelle ein Tabellen-Identifier und verhält sich wie ein Titel oder eine Überschrift für die Tabelle.
Flash hat kein caption-Element für die DataGrid-Komponente, aber man kann den gleichen Effekt durch die folgende Vorgehensweise erzielen :
Platzieren Sie eine label-Komponente oder ein Textfeld, das den Caption-Text des Grids enthält, über dem DataGrid.
Duplizieren Sie den Caption-Text und fügen Sie es als barrierefreien Namen des Grids hinzu. Sie können dies erreichen, indem Sie entweder einen Wert für das Feld "name" des Grids im Bedienfeld Eingabehilfen festlegen oder indem Sie die AccessibilityProperties.name-Eigenschaft des Grids festlegen.
Dies ist ein Beispiel eines Datagrid, das aus dem Komponenten-Bedienfeld zur Bühne in Flash Professional hinzugefügt wird. Ein Label-Element wird auch aus dem Bedienfeld Komponenten hinzugefügt, damit dieses den Caption-Text enthält und der Caption-Text wird im Bedienfeld Eingabehilfen in Flash benutzt, damit dieser als Barrierefreiheits-Name für das Datagrid dient.
Erstellen Sie eine neue Flash-Datei (.fla) oder öffnen Sie eine bestehende, um ein Datagrid hinzuzufügen.
Öffnen Sie das Fenster Flash-Komponenten aus dem Menü Fenster
Ziehen Sie die Datagrid-Komponente auf die Bühne und positionieren Sie diese wie gewünscht.
Ziehen Sie eine Label-Komponente auf die Bühne und positionieren Sie diese wie gewünscht.
Fügen Sie Text zu der Label-Komponente hinzu.
Wählen Sie die Datagrid-Komponente aus und fügen Sie den gleichen Text, so wie er in der Label-Komponente benutzt wird, zu dem Feld Name für das Datagrid hinzu, indem Sie das Bedienfeld Eingabehilfen benutzen.
Dies ist ein einfaches AS3-Beispiel eines Datagrids, das durch Scripting generiert wurde. Zusätzlich wird ein Label-Element erstellt, das den Caption-Text enthält und der Caption-Text wird zu dem Grid als barrierefreier Name hinzugefügt.
Code-Beispiel:
import fl.accessibility.DataGridAccImpl;
import fl.controls.DataGrid;
import fl.controls.Label;
import fl.data.DataProvider;
import flash.accessibility.Accessibility;
import flash.accessibility.AccessibilityProperties;
import flash.system.Capabilities;
// enable accessibility for the DataGrid
DataGridAccImpl.enableAccessibility();
createGrid();
// set the data grid caption text
var gridCaptionText: String = "Game Results";
gridCaption.text = gridCaptionText;
//add the caption text as the DataGrid's accessible name
var accProps: AccessibilityProperties = new AccessibilityProperties();
accProps.name = gridCaptionText;
aDg.accessibilityProperties = accProps;
if (Capabilities.hasAccessibility)
Accessibility.updateProperties();
function createGrid() {
//create and add the components
var aDg: DataGrid = new DataGrid();
var gridCaption: Label = new Label();
addChild(aDg);
addChild(gridCaption);
aDg.move(50, 50);
gridCaption.move(50, 20);
var captionFormat: TextFormat = new TextFormat();
captionFormat.size = 24;
gridCaption.setStyle("textFormat", captionFormat);
gridCaption.width = 300;
gridCaption.height = 100;
bldRosterGrid(aDg);
//prepare the data
var aRoster: Array = new Array();
aRoster =[
{Name: "Wilma Carter", Bats: "R", Throws: "R", Year: "So", Home: "Redlands, CA"},
{Name: "Sylvia Munson", Bats: "R", Throws: "R", Year: "Jr", Home: "Pasadena, CA"},
{Name: "Carla Gomez", Bats: "R", Throws: "L", Year: "Sr", Home: "Corona, CA"},
{Name: "Betty Kay", Bats: "R", Throws: "R", Year: "Fr", Home: "Palo Alto, CA"},
];
aDg.dataProvider = new DataProvider(aRoster);
aDg.rowCount = aDg.length;
};
function bldRosterGrid(dg: DataGrid) {
dg.setSize(400, 300);
dg.columns =[ "Name", "Bats", "Throws", "Year", "Home"];
dg.columns[0].width = 120;
dg.columns[1].width = 50;
dg.columns[2].width = 50;
dg.columns[3].width = 40;
dg.columns[4].width = 120;
};
Anmerkungen zu diesem Code-Beispiel:
Für eine Demonstration sehen Sie sich die funktionierende Version von „Verknüpfung einer Caption mit einem Datagrid durch die Benutzung von ActiveScript 3“ an. Die Quelle von „Verknüpfung einer Caption mit einem Datagrid durch die Benutzung von ActiveScript 3“ steht zur Verfügung.
Der barrierefreie Name kann auch auf das DataGrid angewendet werden, indem man das Bedienfeld Eingabehilfen im Flash-Autorenwerkzeug benutzt.
Im oben stehenden Beispiel wird der Text, der für die dataGrid-Caption benutzt wird, zweimal gelesen, einmal als Text-Label, das für sehende Benutzer angeboten wird und noch einmal als barrierefreier Name für das dataGrid. Autoren können das doppelte Lesen vermeiden, indem sie die silent
-Eigenschaft für den Label-Text auf wahr
setzen.
Prüfen Sie, ob ein Flash-Film eine DataGrid-Komponente enthält.
Bestätigen Sie, dass jeder Caption-Text des DataGrid als barrierefreier Name zu der Komponente hinzugefügt wurde.
Schritt 2 ist wahr.
Wenn dies eine ausreichende Technik für ein Erfolgskriterium ist, dann bedeutet das Scheitern an diesem Testverfahren nicht zwangsläufig, dass das Erfolgskriterium nicht auf irgendeine andere Art und Weise erfüllt wurde, sondern nur, diese Technik nicht erfolgreich implementiert wurde und nicht benutzt werden kann, um die Konformität zu erklären.