É que vc tem que pegar o dado que vem como parametro, esse é o dado correto.

Imagina quantas vezes muda o valor de "DataGridListData(listData).rowIndex"
enquanto vc está efetuando a rolagem?

Por isso ele se perde.

Eu particularmente não costumo usar o override no set data, eu prefiro fazer
o renderer em mxml e escutar os eventos de creationComplete,
e dataChange para esses casos. Dá na mesma...rs

Abraço.

2010/3/1 Eric Maicon <e...@ericmaicon.com.br>

> realmente funcionou aqui...só não entendi a diferença..
>
> muito obrigado!!
>
> On 1 mar, 14:02, Fábio Goll <fabiog...@gmail.com> wrote:
> > Substitua a linha que seta o valor por isso:
> >
> > valor = value[DataGridListData(listData).dataField];
> >
> > Aqui funcionou.
> >
> > 2010/3/1 Eric Maicon <e...@ericmaicon.com.br>
> >
> >
> >
> >
> >
> > > Fiz um exemplo bem rápido aqui...acho q dá pra visualizar o erro!!
> >
> > >http://www.ericmaicon.com.br/datagrid.zip
> >
> > > On 1 mar, 11:39, Mário Júnior <juninho...@gmail.com> wrote:
> > > > tem como vc isolar isso num projeto a parte e mandar pra gente ver.
> > > > Ou.. cola aqui só o renderer para gente ver.
> >
> > > > []s
> >
> > > > Em 1 de março de 2010 11:01, Eric Maicon <e...@ericmaicon.com.br>
> > > escreveu:
> >
> > > > > @Mário Jr
> >
> > > > > cara tinha visto sim..melhora mas nao tira!!
> >
> > > > > vamos dizer q diminui a qnt de linhas pintadas no bug!! hahaha
> >
> > > > > On 1 mar, 10:47, Eric Maicon <e...@ericmaicon.com.br> wrote:
> > > > > > mas foi o que eu fiz (que  o mário jr falou)..
> >
> > > > > > tanto q se for no link ai ele me dá como exemplo o seguinte
> código:
> >
> > > > > > override public function set data(value:Object):void {
> > > > > >             super.data = value;
> >
> > > > > >             if (value != null)
> > > > > >             {
> > > > > >                 text =
> value[DataGridListData(listData).dataField];
> > > > > >                 if(Number(text) > 100)
> > > > > >                 {
> > > > > >                     setStyle("backgroundColor", 0xFF0000);
> > > > > >                 }
> > > > > >             }
> >
> > > > > >             else
> > > > > >             {
> > > > > >                 // If value is null, clear text.
> > > > > >                 text= "";
> > > > > >             }
> >
> > > > > >             super.invalidateDisplayList();
> > > > > >         }
> >
> > > > > > On 1 mar, 10:29, Fredy Gadotti <thief...@gmail.com> wrote:
> >
> > > > > > > Esse problema acontece provavelmente por seu renderer não
> > > sobreescrever
> > > > > o
> > > > > > > método set Data.
> >
> > > > > > > O que acontece é o seguinte:
> > > > > > > Se seu grid tem 100 registros e mostra apenas 5 linhas, ele vai
> > > criar
> > > > > apenas
> > > > > > > 5 instâncias do itemRenderer, e conforme você for dando o
> scroll,
> > > ele
> > > > > vai
> > > > > > > reaproveitando essas mesmas instâncias.
> > > > > > > Caso seu itemRenderer não sobreescreva o set Data, ele pode se
> > > perder (
> > > > > o
> > > > > > > que é basicamente sempre que o método não for sobreescrito! :]
> )
> >
> > > > > > > 2010/3/1 Eric Maicon <e...@ericmaicon.com.br>
> >
> > > > > > > > Obrigado Mário Jr..
> >
> > > > > > > > eu segui esse link para fazer o set que você me falou:
> >
> > > > >
> http://livedocs.adobe.com/flex/3/html/help.html?content=cellrenderer_.
> > > ..
> >
> > > > > > > > no último exemplo ele faz o q eu quero...mas ai continou com
> o
> > > mesmo
> > > > > > > > problema...
> >
> > > > > > > > veja essa imagem...prestando atenção somente no "azul":
> > > > > > > > quando eu desço o rollover da datagrid de uma vez..clicando
> no
> > > final
> > > > > > > > dela...ele fica certo:
> >
> > > > > > > >http://i.imagehost.org/0198/1_134.jpg
> >
> > > > > > > > quando eu vou descendo ela devagar..ela fica assim:
> >
> > > > > > > >http://g.imagehost.org/0993/2_31.jpg
> >
> > > > > > > > On 26 fev, 23:32, Mário Júnior <juninho...@gmail.com> wrote:
> > > > > > > > > Pesquise sobre "overriding setter data method"
> > > > > > > > > Na maioria das coisas isso funciona... agora se o seu
> renderer
> > > for
> > > > > muito
> > > > > > > > > complexo, crie-o seguindo o ciclo de vida da UIComponent
> > > fazendo as
> > > > > > > > > validacoes necessárias no commitProperties();
> >
> > > > > > > > > []s
> >
> > > > > > > > > Em 26 de fevereiro de 2010 18:01, Eric Maicon <
> > > > > e...@ericmaicon.com.br
> > > > > > > > >escreveu:
> >
> > > > > > > > > > Olá pessoal, boa tarde!!
> >
> > > > > > > > > > alguém já usou um textarea dentro de uma datagrid e
> tentou
> > > > > colorir o
> > > > > > > > > > fundo da mesma?
> >
> > > > >
> http://livedocs.adobe.com/flex/3/html/help.html?content=cellrenderer_.
> > > > > > > > ..
> >
> > > > > > > > > > veja esse exemplo...vamos supor que tenha umas 20
> linhas..se
> > > na
> > > > > linha
> > > > > > > > > > 15 da coluna 10 estiver colorido..e vc "correr"
> rapidamente o
> > > > > > > > > > scroll..todas as linhas da coluna 10 vai ficar colorida!!
> >
> > > > > > > > > > já tiveram esse erro? a questão é como corrigir, se tem
> como
> > > eu
> > > > > > > > > > colocar uma image dentro desse textarea ou outra forma de
> > > pegar a
> > > > > > > > > > linha e a coluna de uma datagrid como no exemplo do
> link!!!
> >
> > > > > > > > > > Obrigado
> >
> > > > > > > > > > --
> > > > > > > > > > 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
> > > > > > > > > > flexdev-unsubscr...@googlegroups.com
> > > > > > > > > > Mais opções estão disponíveis emhttp://
> > > > > groups.google.com/group/flexdev
> >
> > > > > > > > > --
> > > > > > > > > Mario Junior
> > > > > > > > > Enterprise Java / Flex Architectures
> > > > > > > > > Adobe Certified Expert Flex 3 with AIR
> >
> > > > > > > > > Sofshore Informáticahttp://www.sofshore.com.br
> > > > > > > > > +55 (48) 3337 2003
> > > > > > > > > Rua Pastor Willian Richard Schisler Filho 452 sl 102,
> 88034-100
> > > > > Itacorubi
> > > > > > > > > Florianopolis SC Brasil
> >
> > > > > > > > --
> > > > > > > > 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
> > > > > > > > flexdev-unsubscr...@googlegroups.com
> > > > > > > > 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
> > > flexdev@googlegroups.com
> > > > > Para sair da lista, envie um email em branco para
> > > > > flexdev-unsubscr...@googlegroups.com
> > > > > Mais opções estão disponíveis emhttp://
> groups.google.com/group/flexdev
> >
> > > > --
> > > > Mario Junior
> > > > Enterprise Java / Flex Architectures
> > > > Adobe Certified Expert Flex 3 with AIR
> >
> > > > Sofshore Informáticahttp://www.sofshore.com.br
> > > > +55 (48) 3337 2003
> > > > Rua Pastor Willian Richard Schisler Filho 452 sl 102, 88034-100
> Itacorubi
> > > > Florianopolis SC Brasil
> >
> > > --
> > > 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
> > > flexdev-unsubscr...@googlegroups.com
> > > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev
> >
> > --
> > Fábio Goll
> > Gtalk/Msn: fabiog...@gmail.com
> > Twitter: @fabiogoll
>
> --
> 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
> flexdev-unsubscr...@googlegroups.com
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>



-- 
Fábio Goll
Gtalk/Msn: fabiog...@gmail.com
Twitter: @fabiogoll

-- 
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 
flexdev-unsubscr...@googlegroups.com
Mais opções estão disponíveis em http://groups.google.com/group/flexdev

Responder a