A forma correta é fazer o click do botão do componente disparar um evento customizado, desta forma qualquer outro que o utilizar poderá escutar o evento e executar o método que lhe convier.
Em 20 de novembro de 2011 02:10, Cristian Edson Göhl <[email protected] > escreveu: > Opa Marcelo, > > cara tu até poderia fazer algo utilizando assim: > > > protected function bMarcelo_clickHandler(event:** > MouseEvent):void > { > //codigo > } > > protected function bMarcelo_clickHandler2(event:** > MouseEvent):void > { > //codigo > } > > bMarcelo.removeEventListener(**MouseEvent.CLICK, > bMarcelo_clickHandler); // Assim você remove um evento. > bMarcelo.addEventListener(**MouseEvent.CLICK, > bMarcelo_clickHandler2); // Assim adiciona um evento. > > Nesse sentido você conseguiria fazer funcionar, porém teria que ter > cuidado de sempre remover um evento adicionado, para não ficar com mais de > 1. > > Não aconselho fazer algo deste tipo. > > Use alguma outra verificação para saber o que fazer, talvez até pelo text > do button, > > if (bMarcelo.label == "asd") > { > // Fazer tal coisa. > } > else > { > // tal coisa > } > > Assim só precisa uma função, que já pode deixar definida no click pelo > mxml, é mais rápido, menos código, e mais fácil de entender. > > Abraço. > -----Original Message----- From: Marcelo A > Sent: Saturday, November 19, 2011 11:51 PM > To: [email protected] > Subject: [flexdev] mudar click do botao que esta em um componente > > > Pessoal, > > tenho um componente que é um Panel e nele tenho um botao. > Na minha aplicacao chamo esse componente e altero o label do botao por > exemplo. O que eu nao sei é como faço para passar para o click do > botao a function que desejo. > Pois posso ter esse componente Panel em dois momentos diferentes da > minha aplicacao e quero que ele tenha funcionalidades diferentes no > click do botao. > > Abaixo coloco o exemplo que estou falando. > > Obrigado. > []'s > Marcelo > > Componente: > > <s:Panel > xmlns:fx="http://ns.adobe.com/**mxml/2009<http://ns.adobe.com/mxml/2009> > " > xmlns:s="library://ns.adobe.**com/flex/spark<http://ns.adobe.com/flex/spark> > " > xmlns:mx="library://ns.adobe.**com/flex/mx <http://ns.adobe.com/flex/mx>" > width="250" height="200" title="{labelpanel}" > > <fx:Declarations> > <!-- Place non-visual elements (e.g., services, value objects) here --> > </fx:Declarations> > <fx:Script> > <![CDATA[ > [Bindable] > public var labelBtn; > > [Bindable] > public var labelpanel; > > ]]> > </fx:Script> > <s:Button x="89" y="118" label="{labelBtn}" id="btnGrupo" /> > <s:TextInput id="descricaoGrupo" x="89" y="43" /> > <s:Label x="37" y="49" text="Grupo"/> > </s:Panel> > > > Aplicacao > > <comp:GrupoComp labelBtn="Inserir" labelpanel="Cadastro" > id="painelCadastroGrupo" /> > > -- > 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 flexdev-unsubscribe@** > googlegroups.com <[email protected]> > Mais opções estão disponíveis em > http://groups.google.com/**group/flexdev<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 flexdev-unsubscribe@** > googlegroups.com <[email protected]> > Mais opções estão disponíveis em > http://groups.google.com/**group/flexdev<http://groups.google.com/group/flexdev> > -- Clayton Marques Pereira -- 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
