Techniken für WCAG 2.0

Zum Inhalt

-

FLASH31: Festlegung von Untertiteln für ein DataGrid

Anwendbarkeit

  • Adobe Flash Professional Version MX und höher

  • Adobe Flex

Die Technik bezieht sich auf:

Anmerkungen zur Unterstützung durch Benutzeragenten und assistierende Techniken

Siehe User Agent Support for Flash für allgemeine Informationen zur Unterstützung durch Benutzeragenten.

Beschreibung

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 :

  1. Platzieren Sie eine label-Komponente oder ein Textfeld, das den Caption-Text des Grids enthält, über dem DataGrid.

  2. 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.

Beispiele

Beispiel 1: Verknüpfung eines Labels mit einem Datagrid

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.

Beispiel 2: Verknüpfung einer Caption mit einem Datagrid durch ActiveScript 3

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:

Tests

Vorgehensweise

  1. Prüfen Sie, ob ein Flash-Film eine DataGrid-Komponente enthält.

  2. Bestätigen Sie, dass jeder Caption-Text des DataGrid als barrierefreier Name zu der Komponente hinzugefügt wurde.

Erwartete Ergebnisse

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.