flash on 2009-6-30
検証: http://feb19.jp/blog/archives/000143.php
あとで書きます。
"まずbaseというMovieClipがあって、
add_btn、remove_btn、baseRemove_btnが
ステージに置いてあるSWFのコード。
remove_btnやbaseRemove_btnの挙動を探ってみてください。"
♥0 |
Line 41 |
Modified 2009-06-30 22:44:53 |
MIT License
archived:2017-03-20 02:58:31
ActionScript3 source code
/**
* Copyright takawo ( http://wonderfl.net/user/takawo )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/udrj
*/
//検証: http://feb19.jp/blog/archives/000143.php
//あとで書きます。
//"まずbaseというMovieClipがあって、
//add_btn、remove_btn、baseRemove_btnが
//ステージに置いてあるSWFのコード。
//remove_btnやbaseRemove_btnの挙動を探ってみてください。"
package {
import flash.display.Sprite;
import flash.events.Event;
public class FlashTest extends Sprite {
public function FlashTest() {
// write as3 code here..
}
}
}
var s:Sprite = new Sprite();
s.name = "sprite";
base.root.addEventListener(Event.REMOVED, onRemovedHandler);
base.addEventListener(Event.REMOVED, onRemovedHandler);
s.addEventListener(Event.REMOVED, onRemovedHandler);
//--
add_btn.buttonMode = true;
remove_btn.buttonMode = true;
baseRemove_btn.buttonMode = true;
add_btn.addEventListener(MouseEvent.CLICK, onClickHandler);
remove_btn.addEventListener(MouseEvent.CLICK, onClickHandler);
baseRemove_btn.addEventListener(MouseEvent.CLICK, onClickHandler);
//--
function onRemovedHandler(e:Event):void {
trace("target: " + e.target.name);
trace("currentTarget: " + e.currentTarget.name);
trace("eventPhase: " + e.eventPhase);
trace("type: " + e.type);
trace("---------");
if(e.eventPhase == 2 && e.target.name == "base") {
trace("base removed!")
}
}
function onClickHandler(e:MouseEvent):void {
switch(e.currentTarget) {
case add_btn:
base.addChild(s);
break;
case remove_btn:
base.removeChild(s);
break;
case baseRemove_btn:
removeChild(base);
}
}