Ae marcio fiz o q vc falou  segue o cód, porem nao funcionou ,  o progress
chega a 100 e o setup tambem é printado, somente o onReady nao printa.

sinistro, rsrss

<?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>

    <fx:Script>
        <![CDATA[
            import mx.events.ModuleEvent;
            import mx.modules.Module;
            import mx.modules.ModuleLoader;

            /**
             * Vars
             * */

            //private var moduleLoader:ModuleLoader = new ModuleLoader();

            /**
             * Constructor
             * */

            private function cadastroClick():void
            {
                moduleLoader.addEventListener(ModuleEvent.PROGRESS,
onProgress);
                moduleLoader.addEventListener(ModuleEvent.ERROR, onError);
                moduleLoader.addEventListener(ModuleEvent.READY, onReady);
                moduleLoader.addEventListener(ModuleEvent.SETUP, onSetup);
                moduleLoader.url = "Shell.swf";
                moduleLoader.loadModule();
            }

            private function shellClick():void
            {
            }

            /**
             * Handlers
             * */

            private function onProgress(e:ProgressEvent):void
            {
                var numPerc:Number = Math.round((Number(e.bytesLoaded) /
Number(e.bytesTotal)) * 100);
                trace(numPerc)
            }

            private function onError(e:ModuleEvent):void
            {
                trace("error")
            }

            private function onSetup(e:ModuleEvent):void
            {
                trace("onSetup")
            }

            private function onReady(e:ModuleEvent):void
            {
                trace("onReady")
            }

        ]]>
    </fx:Script>

    <mx:VBox>
        <mx:HBox>
            <s:Button label="cadastro" click="cadastroClick()" />
            <s:Button label="shell" click="shellClick()" />
        </mx:HBox>
    </mx:VBox>

    <mx:VBox id="vbBox">
        <mx:ModuleLoader id="moduleLoader" />
    </mx:VBox>
</s:Application>


Em 27 de setembro de 2011 23:23, Mário Júnior <[email protected]>escreveu:

> Estranho... eu ia dizer q era pq o ModuleLoader nao está no stage, mas
> depois eu vi q vc faz um addChild no vbBox.
> Por acaso o evento "setup" é disparado?
>
> Faça um teste:
> - retire a var moduleLoader:ModuleLoader
> - adicione <mx:ModuleLoader id="moduleLoader" /> dentro do vbBox.
>
> Dá um feedback depois.
>
> []'s
>
>
>
>
> Em 27 de setembro de 2011 23:07, Nagibi Emanuel <[email protected]>escreveu:
>
>>  Boa noite pesoALL,
>>
>> quebrando um mucado a cabeça aqui mais nao estou conseguindo descobrir pq
>> nao esta sendo dispachado o evendo ready, apos o carregamento do módulo os
>> outros eventos estao dispachando.
>>
>> Vaew, segue o código.
>>
>>
>> <?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>
>>
>>     <fx:Script>
>>         <![CDATA[
>>             import mx.events.ModuleEvent;
>>             import mx.modules.Module;
>>             import mx.modules.ModuleLoader;
>>
>>             /**
>>              * Vars
>>              * */
>>
>>             private var moduleLoader:ModuleLoader = new ModuleLoader();
>>
>>             /**
>>              * Handlers
>>              * */
>>
>>             private function cadastroClick():void
>>             {
>>                 moduleLoader.addEventListener(ModuleEvent.PROGRESS,
>> onProgress);
>>                 moduleLoader.addEventListener(ModuleEvent.ERROR, onError);
>>                 moduleLoader.addEventListener(ModuleEvent.READY, onReady);
>>                 moduleLoader.addEventListener(ModuleEvent.SETUP, onSetup);
>>                 moduleLoader.url = "Shell.swf";
>>                 moduleLoader.loadModule();
>>             }
>>
>>             private function shellClick():void
>>             {
>>             }
>>
>>             /**
>>              * Handlers
>>              * */
>>
>>             private function onProgress(e:ProgressEvent):void
>>             {
>>                 var numPerc:Number = Math.round((Number(e.bytesLoaded) /
>> Number(e.bytesTotal)) * 100);
>>                 trace(numPerc)
>>             }
>>
>>             private function onError(e:ModuleEvent):void
>>             {
>>                 trace("error")
>>             }
>>
>>             private function onSetup(e:ModuleEvent):void
>>             {
>>                 trace("onSetup")
>>                 vbBox.addChild(moduleLoader);
>>             }
>>
>>             private function onReady(e:ModuleEvent):void
>>             {
>>                 trace("onReady")
>>             }
>>
>>         ]]>
>>     </fx:Script>
>>
>>     <mx:VBox>
>>         <mx:HBox>
>>             <s:Button label="cadastro" click="cadastroClick()" />
>>             <s:Button label="shell" click="shellClick()" />
>>         </mx:HBox>
>>     </mx:VBox>
>>
>>     <mx:VBox id="vbBox">
>>
>>     </mx:VBox>
>> </s:Application>
>>
>>  --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>
>
>
>
> --
> Mario Junior
> http://blog.mariojunior.com/
> @mariojunior
>
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev

-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a