Quando você utiliza o itemRenderer vc deve adicionar a palavra
"outerDocument", no seu caso deve ser dessa forma:

click="outerDocument.cliqueHandler()"

Espero ter ajudado.

Abraço.

On 9 fev, 23:43, carlos_online <[EMAIL PROTECTED]> wrote:
> Pessoal,
>
> Eh o seguinte: eu estou criando uma aplicacao aonde eu gostaria que
> houvesse num DataGrid nas colunas um icone para o usuario deletar e
> outro para ele editar cada uma das linhas do DataGrid.
>
> Ate ai, tudo bem.. consegui fazer numa boa. Meu problema, porem, eh
> que o codigo se comporta de forma estranha dentro de um ItemRenderer.
>
> Eh o seguinte.. coloquei minha imagem la, bonitinha dentro da celula
> do Grid, porem, nao consigo chamar a propriedade "CLIK" quando deixo o
> codigo de minha imagem dentro do itemRenderer. Se eu pegar o mesmo
> codigo e colocar fora do grid (o codigo da imagem); o compilador
> enxerga numa boa a chamada ao metodo cliqueHandler.
>
> O que estou fazendo errado?? Abaixo esta todo o codigo, se alguem
> puder me ajudar, agradeco:
>
> P.S.: O codigo ainda esta feioso pq estou testando, ok? =D
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:VBox xmlns:mx="http://www.adobe.com/2006/mxml"; width="800"
>         xmlns:utils="comps.utils.*">
>         <mx:Script>
>                 <![CDATA[
>                         import mx.controls.Alert;
>                         import mx.rpc.soap.errors.ClientInputError;
>                         import mx.core.Application;
>                         import mx.collections.ArrayCollection;
>             [Bindable]
>             private var initDG:ArrayCollection = new ArrayCollection([
>                 {Login:'carlos_online', Nome:'Carlos',
> Sobrenome:'Pereira'},
>                 {Login:'paulo', Nome:'Paulo', Sobrenome:'Henrique'},
>                 {Login:'andre', Nome:'Andre',
> Sobrenome:'Christian'}
>             ]);
>
>             public function cliqueHandler(e:Event):void{
>                                 Alert.show(myGrid.selectedItem.toString());
>             }
>
>                 ]]>
>         </mx:Script>
>
>         <mx:states>
>                 <mx:State name="insertEdit">
>                         <mx:AddChild position="lastChild">
>                                 <mx:Panel id="panelCadastro" title="Cadastro 
> de Usuário">
>                                         <mx:Form>
>                                                 <mx:FormItem label="Login">
>                                                         <mx:TextInput 
> id="txtLogin"/>
>                                                 </mx:FormItem>
>                                                 <mx:FormItem label="Senha">
>                                                         <mx:TextInput 
> id="txtSenha" displayAsPassword="true"/>
>                                                 </mx:FormItem>
>                                                 <mx:FormItem label="Senha 
> expira em">
>                                                         <utils:CampoData 
> id="txtDataSenha"/>
>                                                 </mx:FormItem>
>                                                 <mx:FormItem label="Nome">
>                                                         <mx:TextInput 
> id="txtNome" />
>                                                 </mx:FormItem>
>                                                 <mx:FormItem 
> label="Sobrenome">
>                                                         <mx:TextInput 
> id="txtSobrenome" />
>                                                 </mx:FormItem>
>                                                 <mx:FormItem 
> label="Departamento">
>                                                         <mx:ComboBox 
> id="cbDepartamento" />
>                                                 </mx:FormItem>
>                                         </mx:Form>
>                                 </mx:Panel>
>
>                         </mx:AddChild>
>                         <mx:RemoveChild target="{myGrid}"/>
>                         <mx:SetEventHandler target="{button1}" name="click"
> handler="currentState = ''"/>
>                         <mx:RemoveChild target="{button1}"/>
>                         <mx:AddChild relativeTo="{panelCadastro}" 
> position="lastChild"
> target="{button1}"/>
>                 </mx:State>
>         </mx:states>
>
>     <mx:DataGrid id="myGrid" dataProvider="{initDG}"
>             variableRowHeight="true" x="300" y="300" >
>         <mx:columns>
>                 <mx:DataGridColumn dataField="Login"/>
>                 <mx:DataGridColumn dataField="Exp Senha"/
>
>                 <mx:DataGridColumn dataField="Nome"/
>
>                 <mx:DataGridColumn dataField="Sobrenome"/
>
>                 <mx:DataGridColumn dataField="Departamento"/
>
>                 <mx:DataGridColumn dataField="Del" width="30"
> sortable="false" >
>                     <mx:itemRenderer>
>                         <mx:Component>
>                                 <mx:VBox horizontalAlign="center">
>                                 <mx:Image id="imgDeletar"
>                                     source="assets/icons/trash_16.png"
>                                 buttonMode="true" toolTip="Clique para
> deletar" click="mx.controls.Alert.show('Voce quer deletar')"/>
>                                                         </mx:VBox>
>
>                         </mx:Component>
>                     </mx:itemRenderer>
>                 </mx:DataGridColumn>
>                 <mx:DataGridColumn id="clEdit" dataField="Edit"
> width="30" sortable="false">
>                     <mx:itemRenderer>
>                         <mx:Component>
>                                 <mx:VBox horizontalAlign="center" >
>                                 <mx:Image
>                                 source="assets/icons/
> edit_16.png"
>                                 buttonMode="true" toolTip="Clique para
> editar" click="" />
>                                 <!--  **********************************
>                                  NA LINHA ACIMA NAO TEM QUEM FACA O EVENTO 
> CLIK ENXERGAR O
> CLIQUEHANDLER DECLARADO LA EM CIMA!!!
>                                   ********************************** -->
>
>                                 </mx:VBox>
>                         </mx:Component>
>                     </mx:itemRenderer>
>                 </mx:DataGridColumn>
>
>         </mx:columns>
>     </mx:DataGrid>
>
>         <mx:Button label="Clique" click="currentState = 'insertEdit'"
> id="button1"/>
>
>         <mx:transitions>
>         <mx:Transition id="loginTransition"
>                 fromState="*"
>                 toState="insertEdit">
>             <mx:WipeRight target="{panelCadastro}"/>
>         </mx:Transition>
>         <mx:Transition id="registerTransition"
>                 fromState="*"
>                 toState="">
>             <mx:WipeRight target="{myGrid}"/>
>         </mx:Transition>
>     </mx:transitions>
>
> </mx:VBox>
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com
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