Mostrar showBusyCursor qdo carrega um módulo

10 views
Skip to first unread message

Marcel Pigozzi

unread,
Jun 30, 2009, 9:43:21 AM6/30/09
to fle...@googlegroups.com
Salve pessoal,

To tentando fazer uma coisa meio chatinha ...
qdo clico em um botão, que vai chamar um módulo, como faço para mostrar o showbusycursor enquanto carrega o modulo ?
terei que criar uma função para isso ? ou no próprio flex, não tem isso ?

abraços

--
Marcel Pigozzi
http://thegeekers.wordpress.com/

"Procure ser uma pessoa de valor, em vez de procurar ser uma pessoa de sucesso. O sucesso é conseqüência"

Mário Júnior

unread,
Jun 30, 2009, 9:54:24 AM6/30/09
to fle...@googlegroups.com
olha a classe CursorManager :)

2009/6/30 Marcel Pigozzi <marcelp...@gmail.com>



--
Mário Júnior
Programador Java / Adobe Flex
http://blog.mariojunior.com

Marcel Pigozzi

unread,
Jun 30, 2009, 10:17:39 AM6/30/09
to fle...@googlegroups.com
Eai Mario, blz ?

Então, eu já havia feito isso ... mas tem um problema: o reloginho não pára ...
veja um exemplo que fiz agora só pra ilustrar:

na Application:
    <mx:Script>
            private var homeVar:Home = new Home();
           
            private function modulosCarregados():void {
                CursorManager.setBusyCursor();
                homeVar.addEventListener('homeCarregado', stopShowBusyCursorHandler);
            }
           
            private function stopShowBusyCursorHandler(event:Event):void {
                CursorManager.removeBusyCursor();
            }
    </mx:Script>
   
   <mx:Button label="home" click="loader.url = 'modulos/home.swf' ; modulosCarregados();" />
    <mx:ModuleLoader id="loader" width="100%" height="100%"/>


na Home:
<mx:Module creationComplete="init()">
   
    <mx:Metadata>
        [Event(name="homeCarregado", type="flash.events.Event")]
    </mx:Metadata>
   
    <mx:Script>
            private function init():void {
                var evento:Event = new Event("homeCarregado");
                dispatchEvent(evento);
            }
    </mx:Script>

Gostaria que, qdo terminar de carregar o modulo, o showBusyCursor desaparecesse ;-)
Então, pensei em fazer disparo de eventos como mostrei acima ... mas o reloginho ainda permanece ... alguma idéia ?

abraços

2009/6/30 Mário Júnior <junin...@gmail.com>

Mário Júnior

unread,
Jun 30, 2009, 10:27:23 AM6/30/09
to fle...@googlegroups.com
o module loader dispara um evento qudno o módulo é carregado (veja nos docs)... use ele em vez de usar um evento dentro do seu módulo.



2009/6/30 Marcel Pigozzi <marcelp...@gmail.com>

ClaudioAraujo

unread,
Jun 30, 2009, 10:29:52 AM6/30/09
to flexdev
Marcel, para exibir você usa

CursorManager.setBusyCursor();
CursorManager.showCursor();

e para remover

CursorManager.hideCursor();
CursorManager.removeBusyCursor();


Testei aqui e funcionou.

Claudio Araujo.


Bindable
cla...@bindable.com.br
http://www.bindable.com .br
http://www.bindable.com.br/blog


On 30 jun, 10:43, Marcel Pigozzi <marcelpsara...@gmail.com> wrote:
> Salve pessoal,
>
> To tentando fazer uma coisa meio chatinha ...
> qdo clico em um botão, que vai chamar um módulo, como faço para mostrar o
> showbusycursor enquanto carrega o modulo ?
> terei que criar uma função para isso ? ou no próprio flex, não tem isso ?
>
> abraços
>
> --
> Marcel Pigozzihttp://thegeekers.wordpress.com/

Marcel Pigozzi

unread,
Jun 30, 2009, 10:39:19 AM6/30/09
to fle...@googlegroups.com
@Mario Jr: procurei no docs, e não achei. Poderia me falar que evento é esse ? Um exemplo seria bom ;)

@ClaudioAraujo: O problema cara, é que quando disparo o evento, a Application não recebe esse evento disparado. Coloquei um Alert no método stopShowBusyCursorHandler, e não mostrou ... Se vc conseguiu, mostra ai.


2009/6/30 ClaudioAraujo <claudio...@gmail.com>



--
Marcel Pigozzi

Mário Júnior

unread,
Jun 30, 2009, 10:45:09 AM6/30/09
to fle...@googlegroups.com
Pow mano... tá com preguiça de procurar nos docs né? :)

READY
http://livedocs.adobe.com/flex/3/html/help.html?content=modular_6.html



(nunca forneço código pronto... prefiro ensinar a pescar doq dar peixe pronto).


Um abraço.





2009/6/30 Marcel Pigozzi <marcelp...@gmail.com>

Marcel Pigozzi

unread,
Jun 30, 2009, 10:48:56 AM6/30/09
to fle...@googlegroups.com
iauehaiuehaiehaiehiauea

fez bem ... melhor ensinar do que dar pronto ;-)

vou pesquisar ...

abracos

2009/6/30 Mário Júnior <junin...@gmail.com>

Marcel Pigozzi

unread,
Jun 30, 2009, 11:03:46 AM6/30/09
to flexdev
ae ... vlw Mario Jr ... com o docs, ajudou hehehe

<mx:ModuleLoader loading="CursorManager.setBusyCursor();"
ready="CursorManager.removeBusyCursor();"
id="loader" width="100%" height="100%"/>

abração a todos!

On 30 jun, 11:48, Marcel Pigozzi <marcelpsara...@gmail.com> wrote:
> iauehaiuehaiehaiehiauea
>
> fez bem ... melhor ensinar do que dar pronto ;-)
>
> vou pesquisar ...
>
> abracos
>
> 2009/6/30 Mário Júnior <juninho...@gmail.com>
>
>
>
> > Pow mano... tá com preguiça de procurar nos docs né? :)
>
> > READY
> >http://livedocs.adobe.com/flex/3/html/help.html?content=modular_6.html
>
> > (nunca forneço código pronto... prefiro ensinar a pescar doq dar peixe
> > pronto).
>
> > Um abraço.
>
> > 2009/6/30 Marcel Pigozzi <marcelpsara...@gmail.com>
>
> >> @Mario Jr: procurei no docs, e não achei. Poderia me falar que evento é
> >> esse ? Um exemplo seria bom ;)
>
> >> @ClaudioAraujo: O problema cara, é que quando disparo o evento, a
> >> Application não recebe esse evento disparado. Coloquei um Alert no método
> >> stopShowBusyCursorHandler, e não mostrou ... Se vc conseguiu, mostra ai.
>
> >> 2009/6/30 ClaudioAraujo <claudioarauj...@gmail.com>
>
> >>> Marcel, para exibir você usa
>
> >>>  CursorManager.setBusyCursor();
> >>>  CursorManager.showCursor();
>
> >>> e para remover
>
> >>>   CursorManager.hideCursor();
> >>>   CursorManager.removeBusyCursor();
>
> >>> Testei aqui e funcionou.
>
> >>> Claudio Araujo.
>
> >>> Bindable
> >>> clau...@bindable.com.br
> >>>http://www.bindable.com.br
Reply all
Reply to author
Forward
0 new messages