acho que dentro do Item renderer separado você pode colocar uma função
chamando parentDocument.FUNÇÃO() no in-line usa outerDocument.FUNÇÃO() eu
faço assim... talvez a galera aí saiba uma maneira melhor... deixa eu colar
um exemplo... só tenho exemplo de click pro in-line...
explicando as propriedades...
alpha: para quando estiver autorizada esmaecer o botão, para parecer
desabilitado
enabled: exatamente para evitar que o animal... digo, usuário clique...
tooltip: pra mostrar a tooltip do Status
buttonMode, usehandCursor e mouseChildren: para a imagem ficar como botão
<mx:DataGridColumn headerText="" width="20" dataField="Status">
<mx:itemRenderer>
<fx:Component>
<mx:VBox horizontalAlign="center"
verticalAlign="middle">
<mx:Image
source="assets/images/sistema/aprovarcompra.png" alpha="{data.Status !=
'Pendente' != false ? .3 : 1}" enabled="{data.Status != 'Pendente' ? false
: true}" horizontalAlign="center" height="16" width="16" toolTip="Autorizar"
buttonMode="true" useHandCursor="true" mouseChildren="false"
click="{outerDocument.autorizaCompra()}"/>
</mx:VBox>
</fx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
public function autorizaCompra():void
{
chama o método de autorização depois recarrega a tela...
possívelmente a função init() onde você carrega novamente os dados...
}
Ajudou???
2011/2/10 Julio Silva <[email protected]>
> Cara legal, mas no itemRender Separado como posso fazer tipo um click no
> componente da imagem e ele atualizar meu array colection e consequentimente
> o datagrid da tela principal.
>
> <minha aplicação ta aqui>
> <meu datagrid> <--------------------- atualizar este grid
> <mx:DataGridColumn headerText="" dataField="Status" width="20"
> itemRenderer="com.IRLigado"/>
> </meu datagrid>
> </minha aplicação ta aqui>
>
>
>
>
>
> Em 10/02/2011 13:46, Bruno Tourinho escreveu:
>
> Dá pra fazer inline usando ternário e dá pra fazer usando um itemRenderer
> separado:
>
> Inline:
>
> <mx:DataGridColumn headerText="" width="20" dataField="Status">
> <mx:itemRenderer>
> <fx:Component>
> <mx:VBox horizontalAlign="center"
> verticalAlign="middle">
> <mx:Image source="{data.Ligado == true ?
> 'assets/images/ligado.png' : 'assets/images/deslligado.png }"
> horizontalAlign="center" height="16" width="16" />
> </mx:VBox>
> </fx:Component>
> </mx:itemRenderer>
> </mx:DataGridColumn>
>
> usando itemRender Separado:
>
> <mx:DataGridColumn headerText="" dataField="Status" width="20"
> itemRenderer="com.IRLigado"/>
>
> o item renderer:
>
> <?xml version="1.0" encoding="utf-8"?>
> <s:MXDataGridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
> xmlns:s="library://ns.adobe.com/flex/spark"
> xmlns:mx="library://ns.adobe.com/flex/mx"
> focusEnabled="true">
> <fx:Script>
> <![CDATA[
> public function statusImg(event:String):String
> {
> if(event == 'Ligado')
> {
> return 'assets/images/ligado.png'
> }
> else if(event == 'Desligado')
> {
> return 'assets/images/desligado.png'
> }
> else
> {
> return '';
> }
> }
> ]]>
> </fx:Script>
> <mx:VBox>
> <mx:Image source="{statusImg(dataGridListData.label)}" width="16"
> height="16" toolTip="{dataGridListData.label}"/>
> </mx:VBox>
> </s:MXDataGridItemRenderer>
>
> Espero que ajude...
>
> 2011/2/10 Julio Silva <[email protected]>
>
>> Pessoal boa tarde
>>
>> Estou montando um grid com um itemrenderer, é uma coisa bem básica, se o
>> valor for 1 traz uma imagem, se for 0 traz outra, como se fosse ativo e nao
>> ativo, porém não sei como fazer para dentro do componente do itemrender ele
>> atualizar o grid da tela principal.
>>
>> como posso fazer isso ??
>>
>>
>> valeu
>>
>> Julio
>>
>> --
>> 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
>
>
> --
> 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
>
>
> --
> Julio - SoftJeDhttp://softjed.com.br
>
> --
> 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
>
--
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