Olhe a API do Flex!

Se você olhac lá veria que no Accordion existe os eventos change,
currentStateChange e currentStateChanging.
Verá que na viewStack tem os eventos change, childIndexChange,
currentStateChange e currentStateChanging.

Dependendo a sua necessidade você pode criar um addEventListener referente
ao evento que você quer tratar...

Boa sorte.
<http://livedocs.adobe.com/flex/3/langref/mx/core/UIComponent.html#event:currentStateChanging>
Em 15 de março de 2010 11:59, Bruno Carneiro
<[email protected]>escreveu:

> Eu conheço eventos.
>
> Minhas dúvidas:
> 1- Que evento usar?
> 2- Se não existe um evento específico, vou ter que criar um evento.
> Como dispará-lo? Eu conheço o dispatchEvent, não é disso que estou
> falando. Eu quero saber é como eu vou disparar esse evento antes da
> modificação ocorrer. Porque a ação acontece no click do viewstack ou
> do accordion eu vou ter que extender esses componentes para disparar
> meu evento?
>
> Acho que a resposta para o meu problema não é trivial.
>
> On 15 mar, 11:47, Guilherme Sjlender <[email protected]> wrote:
> > Cada Ação que você faz em um componente, seja Clicar com o Mouse, Fechar
> a
> > tela, Passar o Mouse por cima do componente, etc... tudo isso é disparado
> um
> > evento.... a base das ações do Flex é feita por eventos....
> >
> > Para que você conciga trabalhar nessa sua idéia, acredito que vc tenha
> que
> > estudar essa parte....
> >
> > Olhe na documentação da API do Flex os eventos do viewStack e do
> > Accordion... assim você terá uma luz de como fazer isso.
> > Acho que é melhor você estudar do que ganhar isso pronto, assim você irá
> > aprender de verdade isso!
> >
> > Boa sorte e qualquer coisa, tenha a bondade =)
> >
> > Em 15 de março de 2010 11:39, Bruno Carneiro
> > <[email protected]>escreveu:
> >
> >
> >
> > > Eu estava pensando em tratar isso no projeto do meu sistema.
> >
> > > Definir uma classe Tela para todas as telas do meu sistema. Tela seria
> > > um container que aparece para o usuário como uma tela.
> >
> > > Nessa minha classe eu teria um método fechar que sempre que fosse
> > > disparado iria disparar o método fechar de todas as telas filho desse
> > > objeto. Além disso, no hide das minhas telas eu chamo o método fechar.
> >
> > > Assim, quando eu mudar o item do viewstack, o hide do minha tela iria
> > > disparar e chamar a função fechar. Que chamaria o fechar de todos os
> > > filhos. Como o meu form é um filho desse componente acabaria por ter
> > > seu metodo fechar sendo executado. A mesma coisa quando eu mudar o
> > > index do accordion, como o form é filho acabaria tendo seu fechar
> > > chamado.
> >
> > > Ai no fechar do form, eu pergunto: "Deseja sair sem salvar?"
> >
> > > Mas se o usuário clicar em "Cancel" como eu iria previnir a mudança?
> >
> > > Opsss.. hehehe minha idéia não deu... preciso melhorá-la =]
> >
> > > On 15 mar, 11:30, Bruno Carneiro <[email protected]> wrote:
> > > > Não entendi...
> >
> > > > Não conhecia essa variável change, de onde ela vem? Ou é pra eu criar
> > > > uma variável com esse nome?
> >
> > > > Como vou "ouvir" dentro do meu form os eventos que acontece nos pais
> > > > dele para poder tratar?
> >
> > > > On 15 mar, 10:38, Guilherme Sjlender <[email protected]> wrote:
> >
> > > > > Use a variável change e trate os dois componentes no em uma mesma
> > > função...
> >
> > > > > Consegue compreender?
> >
> > > > > Att.
> >
> > > > > Em 15 de março de 2010 10:26, Bruno Carneiro
> > > > > <[email protected]>escreveu:
> >
> > > > > > Seguinte, tenho um formulário em um accordion.
> >
> > > > > > E este acordion está dentro de um viewstack.
> >
> > > > > > Eu gostaria que toda vez que o usuário "saísse" do formulário,
> caso o
> > > > > > formulário não tenha sido enviado, que uma pergunta fosse feita:
> > > > > > "Deseja salvar as alterações".
> >
> > > > > > Mas eu não sei exatamente como tratar esse "sair".
> >
> > > > > > Sair seria, ou mudar a aba do accordion, ou mudar o viewstack.
> > > Existem
> > > > > > duas formas de sair, eu queria tratar isso dentro do próprio
> > > > > > formulário, não queria ter que fazer essa verificação no
> accordion
> > > nem
> > > > > > no viewstack pois acho que iria embolar o código.
> >
> > > > > > Alguém saberia uma forma legal de fazer isso?
> >
> > > > > > Obs.: o evento hide do form não serve, pois quando mudo o
> viewstack o
> > > > > > visible não muda e não dispara o evento hide do form.
> >
> > > > > > --
> > > > > > 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 emhttp://
> > > groups.google.com/group/flexdev
> >
> > > > > --
> > > > > -----------------------------------------------------------
> > > > > Guilherme Sjlender                            -
> > > > > Desenvolvedor RIA - Flex/Java         -http://site.gflex.biz
> > >           -
> > > > > ------------------------------------------------
> >
> > > --
> > > 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 emhttp://groups.google.com/group/flexdev
> >
> > --
> > -----------------------------------------------------------
> > Guilherme Sjlender                            -
> > Desenvolvedor RIA - Flex/Java         -http://site.gflex.biz
>           -
> > ------------------------------------------------
>
> --
> 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
>



-- 
-----------------------------------------------------------
Guilherme Sjlender                            -
Desenvolvedor RIA - Flex/Java         -
http://site.gflex.biz                       -
------------------------------------------------

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