No seu caso acredito que o problema esteja no fato de estar utilizando valores percentuais justamente nas colunas que você não quer que sejam redimensionadas. Tente colocar 100% para coluna pré-existente (declarada no mxml) e deixar as demais sem tamanho definido.
On 11 nov, 16:46, Carol Michelassi <carolmichela...@gmail.com> wrote: > Olás, > > Estou com um problema parecido, se alguem pudesse ajudar tambem.... > > eu tenho um componente que tem um AdvancedDataGrid inicialmente com uma > coluna só que é padrão, de tamanho fixo, criada no mxml. > Depois quando eu vou usar esse componente em outras telas eu recebo um array > com as colunas específicas, concateno com o array de colunas do datagrid > (que so tinha a coluna fixa, deixando ela por ultimo) e atribuo à grid de > novo: > *var array:Array = colunasEspecificas.source.concat(adg.columns); > adg.columns = array; > * > > O problema é que mesmo as colunas especificas tendo tamanho percentual, não > são elas que redimensionam, e sim a ultima, que tinha tamanho fixo. > > Alguem sabe dizer se é errado o jeito que estou fazendo, ou como posso > forçar ele a respeitar quais tem tamanho fixo e quais tem tamanho > proporcional? > > Grata! > > 2009/11/11 thiagoalgo <thiagoa...@gmail.com> > > > > > Você pode colocar uma coluna em branco no final sem tamanho definido > > para que esta preencha o espaço que sobra no grid. Aparentemente seu > > problema está acontecendo porque você define um tamanho fixo para > > coluna mas um tamanho de 100% para o grid. Como o total da soma dos > > tamanhos das colunas não chega a preencher o grid, o componente acaba > > resimensionado a última coluna. > > > On 10 nov, 14:49, Marcos Krüger <kr.mar...@gmail.com> wrote: > > > Boa tarde Pessoal, > > > > Alguem pode me ajudar a saber a solução do bug que a ultima coluna da > > > AdvancedDataGrid está > > > com largura maior que as outras e não tem nada que sete isso no código > > para > > > a ultima coluna fica com o tamanho maior. > > > Obs: A primeira coluna é maior que as outras, tá funcionando normal, > > tentei > > > adiciona uma coluna nova depois da ultima, a > > > coluna que tava largura superior a outras fica com o tamanho normal e a > > nova > > > coluna fica com tamanho superior. > > > > Alguem tem alguma ideia do que pode ser?! Abaixo segue o código do file. > > > > package > > > { > > > import mx.collections.*; > > > import mx.containers.Canvas; > > > import mx.controls.AdvancedDataGrid; > > > import mx.controls.Alert; > > > import mx.controls.advancedDataGridClasses.*; > > > import mx.controls.dataGridClasses.DataGridColumn; > > > import mx.core.ClassFactory; > > > import mx.core.UIComponent; > > > public class DateTimeLineGenerator extends UIComponent > > > { > > > private var _monthNames:Array = > > > ["Jan","Feb","Mar","Abr","Mai","Jun","Jul","Aug","Set","Out","Nov","Dez"] > > > private var _adg:AdvancedDataGrid; > > > private var startDate:Date; > > > private var finDate:Date; > > > public function DateTimeLineGenerator() > > > { > > > super();} > > > > public function getInstance():UIComponent > > > { > > > return super;} > > > > private function formatTextColunn(texto:String, size:int):String > > > { > > > if(texto.length>size) > > > { > > > var textoDividido:Array = texto.split(" "); > > > Alert.show(textoDividido[0],"teste"); > > > if(textoDividido.length <= 0) > > > { > > > Alert.show("Impossível dividir o texto "+ texto + "tamanho de " + size + > > > "insuficiente");} > > > > } > > > return texto;} > > > > override protected function createChildren():void > > > { > > > super.createChildren(); > > > _adg = new AdvancedDataGrid(); > > > _adg.setStyle("verticalGridLines",false); > > > addChild(_adg);} > > > > override protected function updateDisplayList(width:Number, > > > height:Number):void > > > { > > > _adg.width = width; > > > _adg.height = height; > > > _adg.rowHeight = 80; > > > _adg.dataProvider = parentApplication.viewsActivity; > > > drawTimeLine();} > > > > private function setDate(date:String):Date > > > { > > > var t:Array = date.split("/"); > > > return new Date(t[2],t[1],t[0]);} > > > > private function drawTimeLine():void > > > { > > > var grpColsArray:Array = new Array(); > > > finDate = > > > setDate(parentApplication.viewsProject.source[1].Projeto[0].finishDate); > > > startDate = > > > setDate(parentApplication.viewsProject.source[1].Projeto[0].startDate); > > > var countYear:Number = finDate.getFullYear() - startDate.getFullYear(); > > > var tempYear:Number = startDate.getFullYear(); > > > var countMonth:Number = finDate.getMonth(); > > > var totgroups:Number = 0 > > > var adgc:AdvancedDataGridColumn; > > > var columnActivits:AdvancedDataGridColumn; > > > var k:int; > > > if(finDate.getMonth()==0) > > > { > > > countYear = countYear-1;} > > > > columnActivits = new AdvancedDataGridColumn(); > > > columnActivits.headerText="Atividades"; > > > columnActivits.width=200; > > > columnActivits.dataField="NomeAtividade"; > > > columnActivits.setStyle("textAlign","left"); > > > columnActivits.setStyle("fontFamily","Verdana"); > > > columnActivits.setStyle("fontSize","10"); > > > columnActivits.setStyle("fontWeight","bold"); > > > columnActivits.setStyle("backgroundColor",0xF9F9F9); > > > grpColsArray.push(columnActivits); > > > for(var i:int =0; i<=countYear;i++) > > > { > > > if(i==0) > > > k=startDate.getMonth()-1; > > > else > > > k=0; > > > for(k;k<12;k++) > > > { > > > adgc = new AdvancedDataGridColumn(); > > > adgc.width=100; > > > adgc.headerText = _monthNames[k] + "/" + > > String(tempYear).substring(2,4); > > > if(k%2==0) > > > { > > > adgc.setStyle("backgroundColor",0xFFFFFF); > > > } > > > else > > > { > > > adgc.setStyle("backgroundColor",0xF6F6F6); > > > } > > > grpColsArray.push(adgc); > > > if(i==countYear && k==countMonth-1) > > > { > > > break; > > > } > > > } > > > tempYear++;} > > > > _adg.groupedColumns = grpColsArray > > > _adg.headerRenderer = new ClassFactory(LabelHeaderRenderer); > > > _adg.validateNow(); > > > _adg.resizableColumns=false; > > > _adg.sortableColumns=true; > > > _adg.verticalScrollPolicy="auto"; > > > _adg.horizontalScrollPolicy="auto"; > > > var rparray:Array = new Array(); > > > var rp:AdvancedDataGridRendererProvider = new > > > AdvancedDataGridRendererProvider(); > > > rp.columnIndex=1; > > > rp.columnSpan=0; > > > rp.renderer= new ClassFactory(DataRenderer); > > > rparray.push(rp); > > > > rp.rowSpan=0; > > > _adg.rendererProviders = rparray; > > > _adg.validateNow(); > > > > } > > > } > > > } > > > > componente.JPG > > > 165KExibirDownload --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---