加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

按百分比设置Flex DataGrid的列宽

发布时间:2020-12-15 05:04:43 所属栏目:百科 来源:网络整理
导读:在网上查找了一些资料,有个方法是直接在 DataGridColumn上设置width为小数,加起来必须等1,可是不起作用,不知道是什么原因,我用的是flex3 后来又找了一个方法,可以了,mark一下 //设置dataGrid表格的列宽private function setColumnWidth():void{var wi

在网上查找了一些资料,有个方法是直接在DataGridColumn上设置width为小数,加起来必须等1,可是不起作用,不知道是什么原因,我用的是flex3

后来又找了一个方法,可以了,mark一下

//设置dataGrid表格的列宽
private function setColumnWidth():void{
	var widthList:Array = [0.25,0.25,0.25];
	dataGrid.validateNow();
	var value:Number,display:DataGridColumn,i:int;
	var list:Array = dataGrid.columns;
	var length:int = list.length;
	var dataWidth:int = 0;
	//计算总列宽
	for(i = 0; i < length; i ++){
		display = list[i];
		dataWidth += display.width;
	}
	//大于1,视为像素,按像素设置列宽,并从总列宽中减去;
	for(i = 0; i < length; i ++){
		display = list[i];
		value = widthList[i];
		if(value > 1){
			dataWidth -= value;
			display.width = int(value);
		}
	}
	//小于1,视为百分比,按百分比设置列宽
	for(i = 0; i < length; i ++){
		display = list[i];
		value = widthList[i];
		if(value <= 1) display.width = int(dataWidth * value);
	}
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读