`

AS3动态获得类名及类的方法

阅读更多

1.获得某个实例对象的类名:getQualifiedClassName (实例名字符串表达式);

 

stage.addEventListener(MouseEvent.MOUSE_OVER, mouseOverHandle);
function mouseOverHandle(e:Event):void {
	trace("over");
	//   返回instance**之类的        
	trace(e.target.name);
	//返回元件名   
	trace(getQualifiedClassName(e.target));
}
 

2.获得某个实例对象的类:constructor

 

dynamic class A {};
trace(A.prototype.constructor);// [class A]
trace(A.prototype.constructor == A);// true
var myA:A = new A();
trace(myA.constructor == A);// true
 

3.根据类名获得类: getDefinitionByName(类名);

 

package {
	import flash.display.DisplayObject;
	import flash.display.Sprite;
	import flash.utils.getDefinitionByName;

	public class GetDefinitionByNameExample extends Sprite {
		private var bgColor:uint = 0xFFCC00;
		private var size:uint = 80;

		public function GetDefinitionByNameExample() {
			var ClassReference:Class = getDefinitionByName("flash.display.Sprite") as Class;
			var instance:Object = new ClassReference();
			instance.graphics.beginFill(bgColor);
			instance.graphics.drawRect(0, 0, size, size);
			instance.graphics.endFill();
			addChild(DisplayObject(instance));
		}
	}
}
 

4.用得到的类实例化对象:一般中间要用一个无类型变量传递类,进行实例化;如:

 

var i = 0;
var c:* = getDefinitionByName(getQualifiedClassName("MyClass" + i));
var myClass:*=new c();
分享到:
评论

相关推荐

    vb枚举指定窗口下控件类名及句柄

    通过结合使用`FindWindow`、`EnumChildWindows`和`GetClassName`等API,我们可以获取桌面窗口或指定窗口下的控件类名和句柄,从而实现对界面的动态控制和自动化测试。这在创建自动化脚本、调试或者分析其他应用程序...

    javascript实现类似java中getClass()得到对象类名的方法

    本文实例讲述了javascript实现类似java中getClass()得到对象类名的方法。分享给大家供大家参考。具体如下: 在javascript中没有能够返回特定类型名的函数 如一个对象 console.log(obj); 得到的是[object ...

    VB遍历桌面所有的窗口和句柄(父窗口和子窗口类名)

    Public Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal nMaxCount As Long) As Long Public Declare Function GetClassName Lib "user...

    as3错误代码内容.doc

    ### AS3错误代码详解 #### 1000 系统内存不足 - **描述**:此错误提示意味着系统的可用内存不足以支持Flash Player编译代码的需求。这通常发生在计算机资源紧张或者同时运行了大量程序的时候。 - **解决方法**: -...

    Unity_DocumentClass:基于tolua + emmylua的Unity as as3文档类的实现

    unity_documentclass一、实现基于unity的文档类功能基于tolua和emmylua,一种类似as3文档类的实现。对一个prefab添加脚本组件:DocumentClass,并指定其类名,有两种方式可以将prefab和lua类联系起来:1.代码创建即可...

    超强 flash as3.0解决办法

    根据给定文件的信息,我们可以总结出以下与Flash AS3.0相关的知识点: ### 1. 设置背景颜色 在Flash中,可以通过更改ActionScript编译器设置来改变SWF文件的默认背景颜色。具体操作步骤如下: - 打开“Navigator”...

    Flash CS 中查找类名对应的资源

    - **重构代码:**在大规模重构过程中,查找并替换类名时,这个工具能确保与之相关的资源也得到更新。 **总结:** `FindResource.jsfl`是Flash CS开发中的一个实用工具,通过JSFL语言实现了根据类名查找相关资源的...

    ActionScript3.0教程

    - AS3中更加严格地遵循了面向对象编程的原则,例如类(`class`)、接口(`interface`)、封装(`public`、`private`等访问修饰符)、继承(`extends`)和多态性等概念得到了加强。 - 类定义格式发生了变化,比如...

    阿里巴巴编码规范AS工具插件

    1. **命名规范**:包括类名、方法名、变量名等的命名规则,如驼峰命名、下划线分隔等。 2. **注释规范**:如何编写清晰、有用的注释,包括类、方法、变量的注释格式和内容要求。 3. **异常处理**:避免空指针异常、...

    导入自定义类

    自定义类是我们根据项目需求自己创建的,它们扩展了语言的基本功能,提供了更具体、更符合业务逻辑的数据结构和方法。这里,我们来深入探讨如何在Python中导入自定义类,以及可能遇到的问题和解决方案。 首先,创建...

    vb获取登陆的QQ

    Private Declare Function GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long ``` 这里使用了`Declare`语句来声明上述API函数...

    VB 动态显示、隐藏窗体的标题栏 VB在运行状态动态显示、隐藏窗体的标题栏,勾选复选框将隐藏、取消则显示,虽然此功能实用性不大,这里主要是想让大家了解VB对窗体元素的操作,比如窗口句柄、获得窗口哪方面的特征、指示要设置窗口哪方面特征、如何表示窗口信息的一个Long类型数值等。

    以上就是VB动态显示、隐藏窗体标题栏的基本实现方法。虽然在实际应用中可能不太常见,但它展示了VB如何通过API调用来控制窗体的细节,以及如何利用窗口句柄这一概念进行高级操作。通过学习这些知识,开发者可以更好...

    VB中的API函数及其他函数

    ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal uFlags As Long) As Long ``` ##### 13. DestroyWindow **功能**:销毁指定的窗口及其所有子窗口。 **用法示例**: ```vb Declare ...

    Flash CS3 中fl.*类库在 FB 中如何使用

    `library.swf`是一个包含预编译AS3类的SWF文件,这些类就是fl.*类库的一部分。`catalog.xml`则是元数据文件,它记录了`library.swf`中的类信息,包括类名、依赖关系等,方便IDE(如FlexBuilder)进行索引和识别。 ...

    面向对象的程序设计-复习题

    13. **多重继承**:一个类可以从多个父类继承,这在某些语言中允许类同时获得多个父类的属性和方法。 14. **类型签名**:在函数或方法声明中,包括参数类型和返回类型的整体信息,用于确定函数的唯一性。 15. **...

    java开发调试技巧及Eclipse快捷键使用方法

    1. 自动补全:Eclipse支持Java代码的自动补全功能,只需输入类名、方法名或变量名的前几个字符,按`Ctrl + Space`即可得到建议列表。 2. 重构:Eclipse提供了强大的重构功能,如重命名、提取方法、内联变量等,可...

    powerDesigner 导出 JAVA 代码

    需要注意的是,为了获得高质量的代码,建议在导出前仔细检查类图中的细节,包括但不限于类名、属性名、方法签名等。此外,还可以通过调整导出设置来自定义导出的JAVA代码格式,以满足特定的需求。总之,...

    获得硬盘序列号

    3. 动态加载DLL: 如果你有一个自定义的DLL,例如用于特定操作,你可以选择在运行时动态加载它。这需要使用`System.Reflection`命名空间的`Assembly.LoadFrom`方法。下面是一个示例,假设你有一个名为`MyCustomDLL....

    Flex 有用的几行代码

    ```as3 System.setClipboard(strContent); ``` - **知识点说明**:在 Flex 中,`System.setClipboard()` 方法可以用来将指定字符串复制到剪贴板上。这对于需要用户复制某些信息到其他地方的应用场景非常有用。 - **...

    12条有用的flex代码

    ```as3 System.setClipboard(strContent); ``` **知识点:** - **`System.setClipboard()`** 方法:Flex 提供了一个内置的方法 `System.setClipboard()`,它可以用来将指定的字符串复制到系统的剪贴板上。这对于...

Global site tag (gtag.js) - Google Analytics