ステージ上に、インスタンス名が緑とオレンジの 2 つのムービークリップがあります。このコードを使用してフレーム 1 をタイムライン化し、各項目がクリックされるのを前に進めています。
MovieClip.prototype.bringForward = function():void{
var currentDepth = this.parent.getChildIndex(this);
if(currentDepth<this.parent.numChildren-1){
this.parent.setChildIndex(this, currentDepth+1);
}
}
green.addEventListener(MouseEvent.MOUSE_UP, clicked);
orange.addEventListener(MouseEvent.MOUSE_UP, clicked);
function clicked(e:MouseEvent){
e.target.bringForward();
}
これを外部の .as ファイルからロードする方法を教えてください。
package {
public class Main {
public function Main() {
}
}
}
私は何度も試しましたが、運がありませんでした。
私はこれを試しました:
package {
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.accessibility.AccessibilityProperties;
import flash.display.Bitmap;
import flash.display.DisplayObject;
import flash.display.DisplayObjectContainer;
import flash.display.MovieClip;
import flash.display.Stage;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.events.KeyboardEvent;
public class Main {
public function Main() {
addListeners();
}
MovieClip.prototype.bringForward = private final function():void{
var currentDepth = this.parent.getChildIndex(this);
if(currentDepth<this.parent.numChildren-1){
this.parent.setChildIndex(this, currentDepth+1);
}
}
private final function addListeners():void
{
green.addEventListener(MouseEvent.MOUSE_UP, clicked);
orange.addEventListener(MouseEvent.MOUSE_UP, clicked);
}
private final function clicked(e:MouseEvent)
{
e.target.bringForward();
}
}
}