ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Flash Action Scriptコミュのクラス内に記述したthisの指定について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
ー環境ー
flash8
flashplayer8
ーーーー
AS2.0初心者です。
空のムービークリップを作成して、その中に線を描画するクラスを作成したいのですが、
createEmptyMovieClipやgetNextHighestDepthに、thisを指定すると正しく表示されません。
_rootを指定すると表示されることは確認したのですが、なぜ、thisではいけないのかがわかりません。
初心者の質問ですが、どなたかよろしくお願いします。

////////////////////////
class testAt {

var dep2:Number;
var mc:MovieClip;

function testAt () {
var mc:MovieClip = new MovieClip;
var dep2:Number = this.getNextHighestDepth();

mc = this.createEmptyMovieClip("container", dep2);

mc.lineStyle(1, 0x000000);
mc.moveTo(10, 10);
mc.lineTo(10, 20);
mc.lineTo(20, 20);
mc.lineTo(20, 10);
mc.lineTo(10, 10);
}
}

コメント(2)

> なぜ、thisではいけないのかがわかりません。
_____
thisは、testAtインスタンスを参照します。testAtは、MovieClipインスタンスではありませんので、MovieClip.createEmptyMovieClip()その他のMovieClipのメソッドは呼出せません。

class testAt {
 var dep2:Number;
 var mc:MovieClip;
 var parent_mc:MovieClip;
 function testAt(_mc:MovieClip) {
  parent_mc = _mc;
  // var mc:MovieClip = new MovieClip();
  // var dep2:Number = this.getNextHighestDepth();
  var dep2:Number = parent_mc.getNextHighestDepth();
  // mc = this.createEmptyMovieClip("container", dep2);
  mc = parent_mc.createEmptyMovieClip("container", dep2);
  mc.lineStyle(1, 0x000000);
  mc.moveTo(10, 10);
  mc.lineTo(10, 20);
  mc.lineTo(20, 20);
  mc.lineTo(20, 10);
  mc.lineTo(10, 10);
 }
}
早速返信ありがとうございました。
MovieClipのインスタンスが必要なんですね。
1日中ひっかかってたので、スッキリしました!
ありがとうございました。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Flash Action Script 更新情報

Flash Action Scriptのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。