Оповещение выдает ошибку PopUpManager при использовании с SWFLoader - PullRequest
3 голосов
/ 13 июля 2011

Я использую SWFLoader для загрузки SWF-файла.Код ниже:

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" 
               xmlns:s="library://ns.adobe.com/flex/spark" 
               xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
    <fx:Declarations>
        <!-- Place non-visual elements (e.g., services, value objects) here -->
    </fx:Declarations>
    <mx:SWFLoader source="alerttesting.swf"/>
</s:Application>

И код alerttesing.swf получает удар:

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" 
            width="100%" height="100%" fontFamily="Arial" fontSize="12"
            xmlns:ilog="http://www.ilog.com/2007/ilog/flex"       
            xmlns:local="c7.views.apps.calendar.*"
            backgroundColor="#FFFFFF">

<mx:Script>
    <![CDATA[
        import mx.controls.Alert
        public function testingalerta():void{
            Alert.show("sa;lfks;aljfa;sljf");
        }
    ]]>
</mx:Script>
<mx:Canvas>
    <mx:VBox>
        <mx:Button click="testingalerta()"/>
        <mx:Button label="aslkdfjasj" click="{Alert.show('sdfslfjlsjf;asjfa;sj');}"/>   
    </mx:VBox>
</mx:Canvas>


</mx:Application>

Каждый раз, когда я нажимаю кнопку, я получаю следующую ошибку:

TypeError: Error #1009: Cannot access a property or method of a null object reference.
    at mx.managers::PopUpManagerImpl/http://www.adobe.com/2006/flex/mx/internal::createModalWindow()[E:\dev\4.x\frameworks\projects\framework\src\mx\managers\PopUpManagerImpl.as:686]
    at mx.managers::PopUpManagerImpl/addPopUp()[E:\dev\4.x\frameworks\projects\framework\src\mx\managers\PopUpManagerImpl.as:401]
    at mx.managers::PopUpManager$/addPopUp()[E:\dev\4.x\frameworks\projects\framework\src\mx\managers\PopUpManager.as:193]
    at mx.controls::Alert$/show()[E:\dev\4.x\frameworks\projects\framework\src\mx\controls\Alert.as:618]
    at alerttesting/abcd()[C:\Users\zee\Adobe Flash Builder 4.5\calendar\src\alerttesting.mxml:12]
    at alerttesting/___alerttesting_Button1_click()[C:\Users\zee\Adobe Flash Builder 4.5\calendar\src\alerttesting.mxml:16]

Можете ли вы объяснить, как я могу решить эту проблему.

С уважением, Зеешан

Ответы [ 2 ]

5 голосов
/ 13 июля 2011

Джейсон был рядом. Вам нужно не только импортировать PopUpManager, но и использовать его.

<fx:Script>
    <![CDATA[
        import mx.managers.PopUpManager;
        private var manager:PopUpManager;
    ]]>
</fx:Script>

Я нашел ответ здесь .

1 голос
/ 13 июля 2011

Я думаю, вам просто нужно импортировать mx PopUpManager.

Попробуйте добавить импорт в ваше приложение:

    <fx:Script>
        <![CDATA[
            import mx.managers.PopUpManager;
        ]]>
    </fx:Script>
...