Flex 如何判断对象的类型

      今天在修改bug过程中遇到需要判断,当鼠标点击某一组件(event.target)时判断该组件的类型。查了下API大致有一下几种情况:

为了方便说明此处举例点击button按钮<s:Button id="button"/>

 1.mx.core.UIComponent.className():String

    只有组件时UIComponent时才具有className属性,具体UIComponent参考API

    如:button.className 

    返回  "Button"

 

 2.mx.utils.ObjectUtil.getClassInfo(obj:Object, excludes:Array = null, options:Object=null):Object

   如:mx.utils.ObjectUtil.getClassInfo(button);

   返回值:Object — 对象包含下列属性:

  name:包含类的名称的字符串。

  properties:所指定对象的属性名称的经过排序的列表,或对原始键的引用。

 

3.mx.utils.NameUtil.getUnqualifiedClassName(object:Object):String

此方法会返回指定对象的类的名称,如NameUtil.getUnqualifiedClassName(button)  返回"Button"。

 

4. flash.utils.getQualifiedClassName(value:*):String

返回包含完全限定类名称的字符串(含包名的类全名),注意与第三条的区别

如 utils.getQualifiedClassName(button) 

返回"mx.controls::Button"

 

你可能感兴趣的:(Flex)