作者scars (scars)
看板Flash
标题Re: [问题] 如何从某属性指向其类别实体
时间Mon Nov 22 05:36:38 2010
※ 引述《justaID (快乐崇拜)》之铭言:
: 请问该如何才能从属性指向其类别的实体?
硬要给你的问题一个解答,就是另外写一个MyTimer类别
然後让他有个parent属性
然後在Apple里面给growTimer一个setter, 指定自己为它的parent...
事实上就你目前的写法,不容易达成你的需求,不建议这样写
既然你的Apple里面已经有自己的Timer
那startGrow跟stopGrow也可以写在Apple里面
我贴完整一点XD
package {
import flash.display.MovieClip;
import flash.events.TimerEvent;
import flash.utils.Timer;
public class Apple extends MovieClip {
public var growTimer:Timer;
public var canEat:Boolean;
public function Apple() {
canEat = false;
}
public function startGrow(growTime:Number){
growTimer=new Timer(growTime,1);
growTimer.addEventListener(TimerEvent.TIMER_COMPLETE, stopGrow)
growTimer.start();
}
public function stopGrow(e:*=null){
growTimer.stop();
canEat=true;
//dispatchEvent(new Event('eatme'));
}
}
}
这样的话Main只需要
var apple1=new Apple();
apple1.startGrow(1000);
其实版上的发问常出现这种情形
就好像走迷宫时遇到死巷
结果开始思考该如何打掉面前的墙壁一样 XD
--
请千万不要觉得我是在嘲笑 我绝对没有那个意思
只是每次看到这种情形都觉得蛮趣味的而已
--
'Cause you are beautiful
your scars are beautiful
like the jade
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.40.207
※ 编辑: scars 来自: 61.224.40.207 (11/22 05:46)
1F:推 justaID:感谢大大的建议! 事实上原本我是采写在class里的写法 11/22 05:43
2F:→ justaID:但会出现 error #1006: startGrow(或stopGrow)不是函数 11/22 05:45
3F:→ justaID:的除错讯息,最近刚学习.fla和.as分开的写法,还不熟稔 11/22 05:46
4F:→ justaID:google很久找不出解决方法,时间又紧迫,只好转弯写~"~ 11/22 05:47
5F:→ justaID:二来也是好奇有没有办法从属性指到类别实体 11/22 05:48
6F:→ scars:不是函数这error还蛮奇怪的 你确定放的位置是在class里吗? 11/22 05:48
也有可能你没把function宣告为public
※ 编辑: scars 来自: 61.224.40.207 (11/22 05:53)
7F:推 justaID:应该没错吧@"@(如果错在这,真该撞豆腐了) 11/22 05:54
8F:→ justaID:package { 11/22 05:54
9F:→ justaID: import flash.utils.Timer; 11/22 05:54
10F:→ justaID: public class Apple extends MovieClip{ 11/22 05:54
11F:→ justaID: var growTimer:Timer; var canEat:Boolean; } 11/22 05:55
12F:→ justaID:(上一行最後的}是手误) 11/22 05:56
13F:→ justaID: public function startGrow() {...} 11/22 05:57
14F:→ justaID: public function stopGrow(evt:TimerEvent):void {...} 11/22 05:57
15F:→ justaID: } 11/22 05:57
16F:→ justaID:} 11/22 05:58
17F:→ justaID:以上,难道真错在语法结构?@"@(猛汗) 11/22 05:58