首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >FLEX4.5 PropertyGrid编辑器

FLEX4.5 PropertyGrid编辑器
EN

Stack Overflow用户
提问于 2011-10-29 21:09:11
回答 1查看 454关注 0票数 0

我对Flex的PropertyGrid编辑器感兴趣。基本上,它应该是这样的:http://www.cnblogs.com/janyou/archive/2009/07/28/1532919.html,但是我可以得到它的来源!

如果不存在这样的组件,我需要帮助创建一个组件。

基本上我需要的是:

  • 从指定的对象(可以在运行时更改)获取属性列表--但是仅仅是我标记的属性
  • --这个属性列表将显示在Flex
  • 中的列表或DataGrid控件中--您可以使用对应的控件(字符串的文本输入、数字的数字数字步进器、布尔值的复选框、指定的颜色的颜色选择,等等)

来编辑这些属性。

谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-04 15:32:50

实现这一点的最简单方法是使用for..in循环并遍历对象的所有属性。然后对每个属性使用ObjectUtil.hasMetadata(),循环遍历所有可能的元数据标记,将它们组织成预定的类别。

例如:

代码语言:javascript
复制
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,就可以了。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7941731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档