• 09 «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • » 11
ASOK?
ActionScriptでFlashつくるよ
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
page top

まずは結論から。

getDefinitionByNameまとめ

  1. 引数にクラス名を渡し、Classにキャスト。
  2. swf内にクラスを含めるため、クラスを参照しておく。
  3. クラス名はパッケージを含むフルパスで

経緯

スクリプトでクラス名を生成し、そのインスタンスを生成したい。 そんな時にはもちろん flash.utils.getDefinitionByName()。それくらい知っている。

getDefinitionByNameの使い方

要は引数にクラス名を指定して、Classにキャストしてクラス自体をいったん変数に格納。その変数を使ってインスタンスを生成すればよい。

ReferenceError: Error #1065: 変数 PhotoParaExplosion は定義されていません。

そうそう。そのままだとクラスがswf内に含まれないのだ。
このことに触れてない記事が多いのは、MovieClipならクラス名を指定しておけば含まれるからだろう。

クラスをswfに含める

ReferenceError: Error #1065: 変数 PhotoParaExplosion は定義されていません。

ええ?!なんで???と、気が遠くなりましたが、正解は…

とこのように、クラス名指定にはもちろんパッケージも含まないといけないのです。

おまけ

よく考えたら、クラス名を文字列で記述しながらクラス自体も記述するってアホすぎる。

これでいいじゃん。結局getDefinitionByNameがいらなくなってしまった…

関連記事
page top

コメント

管理者にだけ表示を許可する
 

トラックバック
TB*URL
Copyright © 2005 ASOK?. all rights reserved.

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。