0 apache-flex flash actionscript actionscript-3
我想做这样的事情:
package com.clicker{
import flash.display.*;
import flash.events.MouseEvent;
public class Stager extends MovieClip {
public function clicker():void {
stage.addEventListener(MouseEvent.CLICK, do_stage);
}
function do_stage(e:MouseEvent):void {
trace("stage clicked");
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我得到1009错误.
当我这样做:
import com.clicker.*;
var test:Stager = new Stager();
test.clicker();
addChild(test);
Run Code Online (Sandbox Code Playgroud)
请帮我.非常感谢您提前和节日快乐.
只有将组件添加到舞台时才能访问舞台.如果您想了解它,可以使用ADDED_TO_STAGE事件.
所以,你可以这样做:
package com.clicker{
import flash.display.*;
import flash.events.*;
public class Stager extends MovieClip {
public function clicker():void {
addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event):void {
removeEventListener(Event.ADDED_TO_STAGE, init);
stage.addEventListener(MouseEvent.CLICK, do_stage);
}
function do_stage(e:MouseEvent):void {
trace("stage clicked");
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1047 次 |
| 最近记录: |