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