http://blogs.adobe.com/aharui/files/2011/03/SparkCheckBoxDataGrid.swf demo
http://blogs.adobe.com/aharui/2011/03/spark-checkbox-datagrid-with-drag-and-drop-support.html
explicação e download de fontes

Utilizei em um projeto já e ficou 100%, não me incomodei com nada :)

2012/3/29 Ricardo Ramires <rramire...@gmail.com>:
> Você esta usando value objects pros itens? Ou Object? Qual o tipo dos
> itens da collection.
>
> Posta um modelo dos seus dados.
>
> On Mar 29, 10:57 am, Tonussi Eric <erictonu...@gmail.com> wrote:
>> Tenta isso:
>>                 arrayDistribuidoras =  arrayDistribuidoras.concat() //cria
>> uma copia do array, forçando o bind
>>                 gridDistribuidora.dataProvider = arrayDistribuidoras;
>> --
>> @Tonussi <http://twitter.com/tonussi>
>> tonussi.com
>> skype: erictonussi
>>
>> Em 29 de março de 2012 10:52, Helio Antonio Francisco Silva <
>> helio.afsi...@gmail.com> escreveu:
>>
>> > esra que nao tem um comando pra redesenhar o itemrender ? ou alguma coisa
>> > do tipo w? o pior e que se eu debugo ta la ,selecionar  == false mas ele
>> > fica marcado e alguma coisa que nao ta dando update no itemrender no
>> > desenho nao sei explicar.
>>
>> > 2012/3/29 Helio Antonio Francisco Silva <helio.afsi...@gmail.com>
>>
>> >> so pra reinteirar nao funcionou.
>>
>> >> 2012/3/29 Helio Antonio Francisco Silva <helio.afsi...@gmail.com>
>>
>> >>> fiz o que voce falo.
>>
>> >>> public var arrayDistribuidoras:ArrayCollection = new ArrayCollection();
>>
>> >>> //Se selecionar todos os produtos então ele deve marcar todos os
>> >>> produtos como true
>> >>>             public function getSelectAllProdutos():void{
>> >>>                 if(todosProdutos.selected == true){
>> >>>                     for(var x:Number=0;x<arrayDistribuidoras.length;x++){
>> >>>                         arrayDistribuidoras[x].selecionar = true;
>> >>>                     }
>> >>>                 }else{
>> >>>                     for(var y:Number=0;y<arrayDistribuidoras.length;y++){
>> >>>                         arrayDistribuidoras[y].selecionar = false;
>> >>>                     }
>> >>>                 }
>> >>>                 arrayDistribuidoras.refresh();
>> >>>                 gridDistribuidora.dataProvider = arrayDistribuidoras;
>> >>>             }
>>
>> >>> <s:CheckBox id="todosProdutos" width="220" label="Selecionar Todas as
>> >>> Industrias "
>> >>>                         click="getSelectAllProdutos()"/>
>>
>> >>> tirei o blindable era isso que voce falo ?
>>
>> >>> 2012/3/29 Ricardo Ramires <rramire...@gmail.com>
>>
>> >>>> Tenta colocar callCheckBox.selected = data.selecionar dentro do seu
>> >>>> set data ou criar uma variavel separada com pra bindar nele. ja tive
>> >>>> problemas com isso: selected="{data.selecionar}"
>>
>> >>>> Vc deve ter um "for" ou outro loop que qdo vc clica no check de fora
>> >>>> percorre toda a collection e marca ou desmarca, certo? Tenta dar um
>> >>>> refresh na collection depois do for.
>>
>> >>>> Ahh e outra coisa, sua collection que popula o grid esta com value
>> >>>> objects né? todos eles com o bindable em todas as propriedades? Pq se
>> >>>> for objetos dinamicos só da caca.
>>
>> >>>> Se n resolver faz um projeto separado, com o grid o chek e a simulacao
>> >>>> dos seus dados no application mesmo pra postar aqui.
>>
>> >>>> On Mar 29, 10:19 am, Helio Antonio Francisco Silva
>> >>>> <helio.afsi...@gmail.com> wrote:
>> >>>> > Gente me fala uma coisa.
>> >>>> > Tenho um maldito grid com um maldito item render.
>>
>> >>>> > <s:DataGrid id="gridDistribuidora"  keyUp="validakey(event)"
>> >>>> width="100%"
>> >>>> > height="100%" requestedRowCount="4">
>> >>>> >                 <s:columns>
>> >>>> >                     <s:ArrayList>
>> >>>> >                         <s:GridColumn dataField="cgc" width="150"
>> >>>> > headerText="CNPJ"></s:GridColumn>
>> >>>> >                         <s:GridColumn dataField="razao_social"
>> >>>> > headerText="Razão Social"></s:GridColumn>
>> >>>> >                         <s:GridColumn dataField="selecionar"
>> >>>> width="40"
>> >>>> > headerText="">
>> >>>> >                             <s:itemRenderer>
>> >>>> >                                 <fx:Component>
>> >>>> >                                     <s:GridItemRenderer
>> >>>> > clipAndEnableScrolling="true" >
>> >>>> >                                         <fx:Script>
>> >>>> >                                             <![CDATA[
>>
>> >>>> >                                                 override public
>> >>>> function
>> >>>> > set data(value:Object):void
>> >>>> >                                                 {
>> >>>> >                                                     super.data =
>> >>>> value;
>> >>>> >                                                 }
>> >>>> >                                                 /*override public
>> >>>> function
>> >>>> > prepare(hasBeenRecycled:Boolean):void
>> >>>> >                                                 {
>>
>> >>>> //callCheckBox.selected
>> >>>> > = data.selecionar;
>> >>>> >                                                 }*/
>>
>> >>>> >                                                 private function
>> >>>> > valueChange():void
>> >>>> >                                                 {
>> >>>> >                                                     data.selecionar =
>> >>>> > callCheckBox.selected;
>>
>> >>>> > outerDocument.todosProdutos.selected = false;
>> >>>> >                                                 }
>> >>>> >                                             ]]>
>> >>>> >                                         </fx:Script>
>> >>>> >                                         <s:HGroup left="5" top="9"
>> >>>> > right="5" verticalAlign="baseline">
>> >>>> >                                             <s:CheckBox
>> >>>> id="callCheckBox"
>> >>>> > click="valueChange()" selected="{data.selecionar}"/>
>> >>>> >                                         </s:HGroup>
>> >>>> >                                     </s:GridItemRenderer>
>> >>>> >                                 </fx:Component>
>> >>>> >                             </s:itemRenderer>
>> >>>> >                         </s:GridColumn>
>> >>>> >                     </s:ArrayList>
>> >>>> >                 </s:columns>
>> >>>> >             </s:DataGrid>
>>
>> >>>> > Problema e o seguinte, simplismente somente visualmente fica 1
>> >>>> checkbox
>> >>>> > marcado.
>> >>>> > eu tenho um checkbox superior que fica em cima do grid, se eu clicar
>> >>>> nesse
>> >>>> > check ele marca todos se eu desmarcar ele desmarca todos, mas
>> >>>> visualmente
>> >>>> > ele sempre deixa 1 marcado, mas nao ta, se voce puxar a barra de
>> >>>> rolagem
>> >>>> > pra baixo e voltar ele sme a marcação dele, mesmo coisa quando marco
>> >>>> todos,
>> >>>> > esse mesm fica desmarcado, mas ta marcado. e ja debuguei ja fiz o
>> >>>> diabo e
>> >>>> > nao entendo pq somente esse checkbox fica assim, alguem tem alguma
>> >>>> luz ???
>> >>>> > --
>> >>>> > *Hélio Antonio Francisco Silva*
>> >>>> > Desenvolvedor web
>> >>>> > Certificado Flash developer
>> >>>> > Certificado Flash Design
>> >>>> > Certificado web developer
>> >>>> > Consultor Microsiga / Totvs
>> >>>> > Desenvolvedor ADVPL / ASP
>> >>>> > Analista de sistemas e ERP Sênior.
>>
>> >>>> --
>> >>>> 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
>>
>> >>> --
>> >>> *Hélio Antonio Francisco Silva*
>> >>> Desenvolvedor web
>> >>> Certificado Flash developer
>> >>> Certificado Flash Design
>> >>> Certificado web developer
>> >>> Consultor Microsiga / Totvs
>> >>> Desenvolvedor ADVPL / ASP
>> >>> Analista de sistemas e ERP Sênior.
>>
>> >> --
>> >> *Hélio Antonio Francisco Silva*
>> >> Desenvolvedor web
>> >> Certificado Flash developer
>> >> Certificado Flash Design
>> >> Certificado web developer
>> >> Consultor Microsiga / Totvs
>> >> Desenvolvedor ADVPL / ASP
>> >> Analista de sistemas e ERP Sênior.
>>
>> > --
>> > *Hélio Antonio Francisco Silva*
>> > Desenvolvedor web
>> > Certificado Flash developer
>> > Certificado Flash Design
>> > Certificado web developer
>> > Consultor Microsiga / Totvs
>> > Desenvolvedor ADVPL / ASP
>> > Analista de sistemas e ERP Sênior.
>>
>> >  --
>> > 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 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 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