我对Flex的PropertyGrid编辑器感兴趣。基本上,它应该是这样的:http://www.cnblogs.com/janyou/archive/2009/07/28/1532919.html,但是我可以得到它的来源!
如果不存在这样的组件,我需要帮助创建一个组件。
基本上我需要的是:
来编辑这些属性。
谢谢!
发布于 2011-11-04 15:32:50
实现这一点的最简单方法是使用for..in循环并遍历对象的所有属性。然后对每个属性使用ObjectUtil.hasMetadata(),循环遍历所有可能的元数据标记,将它们组织成预定的类别。
例如:
var gridData:ArrayCollection=new ArrayCollection();
for(var prop:String in obj)
{
var gridItem:Object = new Object();
gridItem.property = prop;
gridItem.value = obj[prop];
for each(var tag:String in metaDataTags)
{
if(ObjectUtil.hasMetadata(obj,prop,tag)
{
gridItem.category = tag;
break;
}
}
gridData.addItem(gridItem);
}如果您需要使用所有枚举和自定义类别,如问题中的示例,则必须使用flash.utils.describeType。此函数返回包含所有属性和元数据信息的XML。只需解析这个XML,就可以了。
https://stackoverflow.com/questions/7941731
复制相似问题