PDA

Просмотр полной версии : PopupManager и ContextMenu проблема


Vasyaga
15.10.2013, 17:44
Доброго времени!
Столкнулся с нерешаемой (для меня) проблемой. Имею довольно большое сложное приложение на Flex (SDK 4.6). Работает в браузере. Использую единое ContextMenu для всего приложения. Также в приложении используется куча popup-окон - как модальных (прелодеры, диалоги), так и плавающих (окна свойств). Проблема в том, что при правом клике то отображается моё контекстное меню, то нативное меню браузера. Причем нативное меню проскакивает после того, как несколько модальных окон будут последовательно (или параллельно) отображены и скрыты при помощи PopupManager. Поискав информацию нашел, что systemManager для приложения лежит выше всех и может давать такой эффект. Т.е. ему тоже нужно присвоить моё конекстное меню. Пришел к следующему коду:
mainWindow.contextMenu = customContextMenu; //Меню для главного окна
FlexGlobals.topLevelApplication.systemManager.contextMenu = customContextMenu; //Меню для systemManager
FlexGlobals.topLevelApplication.contextMenu = customContextMenu; //Для верности, хотя излишне.
И все равно, после этого при последовательном вызове модальных окон "проскакивает" "не мое" меню. И на В чем может быть проблема? Кто подскажет? Какому еще объекту нужно присвоить значение contextMenu?

PsixokoT
15.10.2013, 18:20
stage.contextMenu = customContextMenu;

Vasyaga
15.10.2013, 20:02
Stage невозможно присвоить contextMenu - на практике и по мануалу выдается IllegalOperationError: http://help.adobe.com/ru_RU/FlashPlatform/reference/actionscript/3/flash/display/Stage.html