Acrescentando a fala do guilherme. O processo que ele falou não é criar um evento, é adicionar um listener - um objeto que fica vigiando se tal evento será disparado, quando for ele chama a função - a um evento que é criado e disparado pelo datagrid.
On 4 mar, 20:36, Guilherme Sjlender <[email protected]> wrote: > ops.... corrige essa linha de > > dgInformacoes.removeEventListener(DataGridEvent.ITEM_EDIT_END,eventoGrid); > para > > dgInformacoes.removeEventListener(DataGridEvent.ITEM_EDIT_END,evento); > > Ok =) > > Até mais > > Em 4 de março de 2010 20:34, Guilherme Sjlender > <[email protected]>escreveu: > > > Blz.... faça o seguinte... > > > apague o itemEditEnd="teste(event)" do seu grid e acrescente > > itemEditBegin="criaEventoEditEnd(event)"... > > > crie a função criaEventoEditEnd(event:DataGridEvent) com o seguinte > > conteúdo: > > > private function criaEventoEditEnd(event:DataGridEvent):void > > { > > dgInformacoes.addEventListener(DataGridEvent.ITEM_EDIT_END,teste); > > } > > Aqui estamos criando um evendo ItemEditEnd chamando o teste(event)... ou > > seja.... quando clicarmos no campo para editar(idemEditBegin) será criado o > > evento para quando ele finalizar a edição do campo.... ai no > > teste(event:DataGridEvent) acrescente na antes de qualquer coisa isso > > > private function eventoGrid(event:DataGridEvent):void > > { > > > dgInformacoes.removeEventListener(DataGridEvent.ITEM_EDIT_END,eventoGrid); > > Alert.show('Teste'); > > } > > Dessa forma o evento será executado uma vez e removido! Não tem como > > executar duas vezes! Compreende? > > Quando clicar em outro campo o evento será criado novamente! Ok? > > > Boa sorte na sua implementação! > > > Até mais > > > GuiSjlender 8D > > > Em 4 de março de 2010 20:07, Ivan Junckes Filho > > <[email protected]>escreveu: > > >> <mx:DataGrid id="dgInformacoes" variableRowHeight="true" > >> height="100%" width="100%" rowHeight="40" > >> dataProvider="{dados}" editable="true" > >> itemEditEnd="teste(event)"> > >> <mx:columns> > >> <mx:DataGridColumn headerText="Data" width="180" > >> dataField="data" > >> editable="false" /> > >> <mx:DataGridColumn headerText="Assunto" > >> editable="true" > >> dataField="assunto" wordWrap="true" > > >> <mx:itemEditor> > >> <mx:Component> > >> <mx:TextArea width="100%" > >> height="40" wordWrap="true"/> > >> </mx:Component> > >> </mx:itemEditor> > >> </mx:DataGridColumn> > >> <mx:DataGridColumn headerText="Responsável" > >> labelFunction="lfResponsavel" width="150" editable="false"/> > >> </mx:columns> > >> </mx:DataGrid> > > >> private function teste(event:DataGridEvent):void{ > >> Alert.show('Teste'); > >> } > > >> Ai está me ajudem please! > > >> On 4 mar, 19:56, Guilherme Sjlender <[email protected]> wrote: > >> > Então, por favor... coloque o seu código para mostrar como está sendo > >> feito! > >> > =) > > >> > Att. GuiSjlender 8D > > >> > Em 4 de março de 2010 19:44, Ivan Junckes Filho <[email protected] > >> >escreveu: > > >> > > Olá, > > >> > > não eu não clico na grid, realmente ele dispara dois eventos, já vi > >> > > algumas pessoas com esse problema mas não achei solução!! Me ajudem!! > > >> > > On 4 mar, 18:48, Guilherme Sjlender <[email protected]> wrote: > >> > > > Olá Ivan.... > > >> > > > Ele está executando duas vezes pelo seguinte motivo.... > > >> > > > Vc deve estar apertando enter ou clicando em outra linha correto? > > >> > > > O que acontece.... vc chama um alert quando disparado o evento.... > >> mas > >> > > você > >> > > > clicou em outra linha.... quando o Alert é chamado a outra linha irá > >> > > perder > >> > > > o foco e irá disparar novamente o evento! hehehe hilário não?! hehe > > >> > > > Tente editar uma linha e clicar fóra do grid! =) > > >> > > > Boa sorte na sua implementação! =) > > >> > > > Até mais > > >> > > > GuiSjlender 8D > > >> > > > Em 4 de março de 2010 17:32, Ivan Junckes Filho < > >> [email protected] > >> > > >escreveu: > > >> > > > > Bom vou explicar melhor.. > > >> > > > > <mx:Application > >> > > > > xmlns:Extended="com.*" > >> > > > > xmlns:mx="http://www.adobe.com/2006/mxml"; > > > >> > > > > <mx:Tree dataProvider="{...}" itemEditEnd="Alert.show('Helloo > >> World')"/ > > >> > > > > </mx:Application> > > >> > > > > Se eu fizer isso mostra dois Alerts!!! PRECISO QUE ELE CHAME O > >> METODO > >> > > > > UMA VEZ SÓ!!! Me ajudem plz > > >> > > > > On 4 mar, 15:02, Ivan Junckes Filho <[email protected]> > >> wrote: > >> > > > > > O problema que eu estou tendo é que o itemEditEnd dispara duas > >> vezes > >> > > e > >> > > > > > preciso que dispare só um! > > >> > > > > > On 4 mar, 14:29, Bruno Ferreira Queiroz <[email protected]> > >> wrote: > > >> > > > > > > Não é melhor fazer um teste, no próprio itemEdit por exemplo.. > > >> > > > > > > if ( value == newValue) { > >> > > > > > > return; > > >> > > > > > > } > > >> > > > > > > se o valor for o mesmo, ele não faz nada. > > >> > > > > > > Att, > > >> > > > > > > Bruno Ferreira > > >> > > > > > > Em 4 de março de 2010 14:00, Ivan Junckes Filho < > >> > > [email protected] > >> > > > > >escreveu: > > >> > > > > > > > Estou pedindo isso porque quando eu disparo o itemEditEnd > >> ele > >> > > executa > >> > > > > > > > o método 2 vezes. E eu preciso que execute só uma!! > > >> > > > > > > > On 4 mar, 13:38, Ivan Junckes Filho <[email protected]> > >> > > wrote: > >> > > > > > > > > Qual evento sem ser o itemEditEnd pode ser usado para por > >> > > exemplo > >> > > > > > > > > salvar os dados no banco que foram editados no DataGrid > >> depois > >> > > da > >> > > > > > > > > edicao do próprio? > > >> > > > > > > > > Obrigado! > > >> > > > > > > > -- > >> > > > > > > > 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 > > >> > > > > > > -- > >> > > > > > > Bruno Ferreira Queiroz > >> > > > > > > Desenvolvimento > >> > > > > > > Global Delivery Solutions > >> > > > > > > + 55 (16) 3322 – 1529 > >> > > > > > > + 55 (16) 9215 - 5553 > >> > > > > > > [email protected] > > >> > > > > -- > >> > > > > 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 > > >> > > -- > >> > > 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 > > >> -- > >> 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 -- 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
