setInterval():此示例使用对象的方法。当要调用为对象定义的方法时,必须使用此语法。
obj = new Object();
obj.interval = function() {
trace("interval function called");
}
setInterval( obj, "interval", 1000 );
--------------------------------------------------------------------------------
以上是摘自flash2004的帮助文件,但是我们在AS2.0中定义的类中怎么用setInterval()
正确的方法是这样的:
----------------------------------------------------
class testA
{
public var _arg:String="ok";
public function testMethod():Void
{
setInterval(this,"testInterval",500);
}
private function testInterval():Void
{
trace(_arg)
}
}
--------------------------------------------------
但是这里的this又是引用谁呢,我经过测试this不可能是类实例,因为testInterval()方法是私有方法呀,而是类本身,但是我的方法不是静态方法呀,类本身又怎么能执行呢,矛盾?
我不是很明白,请教大家帮我解释解释。
附
關於在mx2004 Help文件中setInterVal和clearInterval函數敘述修正
obj = new Object();
obj.interval = function() {
trace("interval function called");
}
setInterval( obj, "interval", 1000 );
--------------------------------------------------------------------------------
以上是摘自flash2004的帮助文件,但是我们在AS2.0中定义的类中怎么用setInterval()
正确的方法是这样的:
----------------------------------------------------
class testA
{
public var _arg:String="ok";
public function testMethod():Void
{
setInterval(this,"testInterval",500);
}
private function testInterval():Void
{
trace(_arg)
}
}
--------------------------------------------------
但是这里的this又是引用谁呢,我经过测试this不可能是类实例,因为testInterval()方法是私有方法呀,而是类本身,但是我的方法不是静态方法呀,类本身又怎么能执行呢,矛盾?
我不是很明白,请教大家帮我解释解释。
附
關於在mx2004 Help文件中setInterVal和clearInterval函數敘述修正
回复Comments
作者:
{commentrecontent}