talvez se vc colocar um condicional dentro do seu laço não resolve??
talvez um atributo no construtor da sua classe ColunaSemanasConsumidor

private var info:Object

 public function
ColunaSemanasConsumidor(columnName:String=null,info:Object=null)
 {
                       super(columnName);
                       this.itemRenderer = componenteRender;
                       this.info = info

  }

talvez algo assim resolva.

Em 2 de junho de 2010 17:28, Squik <rodrigower...@gmail.com> escreveu:

> Então Fabio,
>
> O problema é como passar informação para o meu componente pelo
> intemrender, se eu estou trabalhando em ActionScript
> Eu tenho um classe que extende um datagrid e este cria as colunas em
> runtime, e nem sou eu que dou os nomes para as colunas é um for de 52
> laços e neste caso os nomas da colunas ficam coluna1, coluna2, coluna3
> e por ai vai até coluna52, o problema algumas colunas podem ter que
> tratar um componente interno de forma diferente... então eu não
> consigo saber qual coluna meu componente esta para saber como gerencia-
> lo.
>
>
> package componentes.visuais.componentesPlanilha
> {
>        import mx.controls.DataGrid;
>
>        public class DataGridMetricaConsumidor extends DataGrid
>        {
>
>                private var arrayColunas:Array;
>                private var totalSemanas:uint = 10;
>
>                public function DataGridMetricaConsumidor()
>                {
>                        super();
>
>                        this.arrayColunas = new Array();
>                        this.arrayColunas.push(new ColunaIndice);
>                        this.arrayColunas.push(new
> ColunaDesrcicaoConsumidor);
>                                for(var i:uint = 1 ; i <= totalSemanas ;
> i++){
>                                        this.arrayColunas.push(new
> ColunaSemanasConsumidor(i+"º
> Semana"));
>                                }
>                        this.arrayColunas.push(new ColunaTotal);
>
>                        this.columns = this.arrayColunas;
>                }
>        }
> }
>
>
>
> package componentes.visuais.componentesPlanilha
> {
>        import mx.controls.dataGridClasses.DataGridColumn;
>        import mx.core.ClassFactory;
>
>        public class ColunaSemanasConsumidor extends DataGridColumn
>        {
>                private var componenteRender:ClassFactory = new
> ClassFactory(ComponenteLinhas); // como posso passar dados para este
> cara aqui!?? entende...
>
>                public function
> ColunaSemanasConsumidor(columnName:String=null)
>                {
>                        super(columnName);
>                        this.itemRenderer = componenteRender;
>                }
>
>        }
> }
>
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:HBox xmlns:mx="http://www.adobe.com/2006/mxml";
>        horizontalAlign="center"
>        verticalAlign="middle"
>        horizontalGap="0"
>        verticalGap="0"
>        horizontalScrollPolicy="off"
>        creationComplete="init();" >
>
>        <mx:Script>
>                <![CDATA[
>                        import componentes.dados.CalculosSemanas;
>                        import mx.controls.Alert;
>                        import mx.controls.dataGridClasses.DataGridColumn;
>                        import mx.controls.DataGrid;
>
>                        private function init():void{
>                                CalculosSemanas.setColunaCorrente(data);
>                        }
>
>
>                        private function monitorColunas():void{
>                                //CalculosSemanas.setColunaCorrente(data);
>
>                        }
>                ]]>
>        </mx:Script>
>
>        <mx:Label text="{CalculosSemanas.getColunaCorrente()}" width="100"
> textAlign="center"/>
>
> </mx:HBox>
>
> On 2 jun, 16:49, Fábio Goll <fabiog...@gmail.com> wrote:
> > Você tem algumas opções:
> >
> > - Envia um parametro para o itemRenderer, no meu caso, "campo" é a
> variavel
> > public no meu componente:
> >
> > <mx:DataGridColumn headerText="Ajuste"
> > dataField="percentualAjuste"
> > editorDataField="valor"
> > labelFunction="percLabelFunction" minWidth="50">
> > <mx:itemEditor>
> > <mx:Component>
> > <componentes:ValoresRenderer campo="percentualAjuste" />
> > </mx:Component>
> > </mx:itemEditor>
> > </mx:DataGridColumn>
> >
> > Ou vc captura o dataField informado na column através da variável
> listData
> > no seu itemRenderer
> > que é populada automagicamente, pois o seu itemrenderer implementa o:
> http://livedocs.adobe.com/flex/3/langref/mx/controls/listClasses/IDro...
> >
> > <http://livedocs.adobe.com/flex/3/langref/mx/controls/listClasses/IDro..
> .>que
> > por sua vez tem a propriedade dateField:
> http://livedocs.adobe.com/flex/3/langref/mx/controls/dataGridClasses/...
> >
> > 2010/6/2 Squik <rodrigower...@gmail.com>
> >
> >
> >
> >
> >
> > > O irmãozinho pega leve e da um help ai para nós, a historinha é só
> > > para descontrair mesmo.. he he he.
> >
> > > valew!
> >
> > > On 2 jun, 16:06, Pimenta <brunofpime...@gmail.com> wrote:
> > > > É cada maluco...
> > > > Não era mais fácil, prático e rápido você descrever o seu problema ao
> > > invés
> > > > de contar uma histórinha muquirana dessas?
> >
> > > > Em 2 de junho de 2010 15:59, Squik <rodrigower...@gmail.com>
> escreveu:
> >
> > > > > Olá querido colegas,
> >
> > > > > Fui ver meu neurologista ontem, disse a ele que minha enxaqueca
> estava
> > > > > me matando... ele perguntou se eu tive alguma mudança da hábito
> > > > > recentemente, e eu disse que não. Então ele me perguntou se eu
> estava
> > > > > muito ansioso, eu disse para ele que sim, precisa entregar um
> projeto,
> > > > > e não via a hora de deixá-lo pronto, porém segundo ele isto não era
> o
> > > > > motivo da enxaqueca.. ai ele me perguntou se eu trabalhava com
> Adobe
> > > > > Flex.. Então eu disse que sim. Então fiquei surpreso quando ele me
> > > > > perguntou: Você andou tentando usar render em DATAGRIDS?
> >
> > > > > Eu disse: Sim Doutor, eu andei tentando capturar o nome da coluna
> do
> > > > > meu DATAGRID a partir de um componente renderizado pela função
> > > > > itemrender do Datagridcolumn, e dependendo da coluna o componente
> pode
> > > > > variar.
> >
> > > > > Ele me perguntou: E você conseguiu obter a informação da coluna
> para
> > > > > manipular seu componente? Ai eu disse: O fato de eu estar aqui
> > > > > responde sua pergunta? (rsrsrs).
> >
> > > > > Então como todo bom médico ele me encaminhou para a o grupo
> “flexdev”.
> > > > > Então se puderem me ajudar com minha enxaqueca eu sou muito grato.
> > > > > Pelo menos para eu passar bem este feriado.
> >
> > > > > Abraço amigos!
> >
> > > > > --
> > > > > 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
> >
> > > > --
> > > > -------------------------------------------------------------
> > > > Desenvolvedor Java Pleno
> > > > CSM, Certified ScrumMaster
> > > > ----------------------------
> > > > Bruno PIMENTA
> > > > Cel: 21 7864.5857
> > > > MSN: pimenta-br...@hotmail.com
> > > > -------------------------------------------------------------
> >
> > > --
> > > 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
>

-- 
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