У меня есть приложение, написанное на Flex 3.6, и когда я создаю модальное всплывающее диалоговое окно, кнопки и текст в этом всплывающем окне не работают правильно со свойствами специальных возможностей, которые я определил. Приложение скомпилировано с флагом доступности.
Я создаю простое приложение для проверки проблемы.
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical">
<mx:Script>
<![CDATA[
import mx.containers.TitleWindow;
import mx.managers.PopUpManager;
private var titleWindow:TitleWindow;
private function popUp():void {
titleWindow = PopUpManager.createPopUp(this, CustomTitleWindow, true) as TitleWindow;
PopUpManager.centerPopUp(titleWindow);
}
]]>
</mx:Script>
<mx:Button label="Launch TitleWindow" click="popUp()" />
</mx:Application>
и CustomTitleWindow.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"
title="popup titlewindow"
layout="vertical"
width="200"
height="200"
showCloseButton="true"
close="titleWindow_close(event)">
<mx:Script>
<![CDATA[
import mx.events.CloseEvent;
import mx.managers.PopUpManager;
private function titleWindow_close(evt:CloseEvent):void {
PopUpManager.removePopUp(this)
}
private function titleWindow_continue():void {
PopUpManager.removePopUp(this);
}
]]>
</mx:Script>
<mx:Text text="How now brown cow."
width="100%" />
<mx:Button label="Continue"
click="titleWindow_continue()" />
</mx:TitleWindow>
Теперь, когда я создаю приложение и запускаю инструмент Inspect для просмотра информации о доступности MSAA, кнопка «Продолжить» в окне заголовка не выделяется. Это означает, что программа чтения с экрана или такой инструмент, как Dragon NaturallySpeaking, не будут работать, если вы скажете «Нажмите Продолжить».
Я собрал swf как исполняемый swf со средой выполнения Flash 9.0r124 (не отладкой) с SWF-студией Northcode, но то же самое наблюдается и в более поздних версиях флэш-памяти (10 и 11)
Ниже показан инструмент проверки, который просматривает мое приложение с открытым окном заголовка и курсором мыши над кнопкой «Продолжить»
я должен увидеть кнопку «Продолжить», выделенную желтым
Есть идеи, как заставить функции специальных возможностей правильно работать с всплывающими модальными окнами, созданными с помощью Flex's PopupManager?
Мне не поможет переход на Flex 4.x, но я написал приложение для быстрого тестирования, и похоже, что во Flex 4.5.1, по крайней мере, проблема исправлена, см. Скриншот ниже. В настоящее время мы застряли с приложением, использующим среду исполнения Flex 3.6, и пока не можем выполнить обновление до Flex 4.x