В Flash Player 10.1 не работает контекстное меню - PullRequest
0 голосов
/ 23 июня 2011

Пишу флекс приложение. Я добавил несколько пользовательских пунктов меню в контекстное меню. когда я скомпилировал этот код с помощью flashplayer 10.0, он работает нормально, и мои добавленные пункты контекстного меню отображаются при щелчке правой кнопкой мыши. Но когда я компилирую тот же код для flashPlayer 10.1, пункты меню, которые я добавил в контекстное меню, не отображаются при щелчке правой кнопкой мыши. Что я должен сделать, чтобы решить эту проблему? Я использую SDK 3.5.

Любая помощь или предложение будет оценено.

Я делаю это;

    private var cm:ContextMenu = new ContextMenu();        
    var versionMenu:ContextMenuItem = null;
    var dateMenu:ContextMenuItem = null;
    if(model.appVersion.length > 0)
    {
      versionMenu = new ContextMenuItem(model.appVersion);
    }
    if(model.releaseDate.length > 0)
    {
      dateMenu = new ContextMenuItem(model.releaseDate);
    }

     cm.hideBuiltInItems();
     var cmArray:Array = new Array();
     if(versionMenu != null)
       cmArray.push(versionMenu);
     if(dateMenu != null)
       cmArray.push(dateMenu);
     cm.customItems = cmArray;

Спасибо.

Ответы [ 2 ]

1 голос
/ 23 июня 2011

Если вы пытаетесь создать контекстное меню для Application, то вот правильный код:

<s:Application ... initialize="init();">

    private function init():void
    {
        var versionItem:ContextMenuItem = new ContextMenuItem("Version 1.5.443");
        contextMenu.hideBuiltInItems();
        contextMenu.customItems = [ versionItem ];
    }

</s:Application>
1 голос
/ 23 июня 2011

нет причин.У меня все работает нормально в flashPlayer 10.1.Также он указан как поддерживаемый в 10.1: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/ui/ContextMenu.html

предупреждает свойство isSupported в коде для двойной проверки (это, безусловно, будет верно)

...