« TextInput コンポーネントのTextFormatの設定メモ | メイン | エラーオプションのメモ »

2007年09月04日

[as3] リンケージにクラスを割り当てたときの注意点

AS2の時と同様にオーサリングしてたら、プレビューしたときにコンパイルエラーで 怒られまくったのでメモ。

例えば box というシンボル(ムービークリップ)を作成して、
さらに、その内部にテキストフィールドを配置して、インスタンス名を tf とする。

box内のタイムラインに以下のスクリプトを記述。
tf.text = "TextField";
これで一度パブリッシュしてみると、うまく書き出される。

次にムービークリップ box のリンケージの設定を
クラス : BoxClass
基本クラス : flash.display.MovieClip
と設定する。

BoxClass の中身は以下の通り。
package
{
import flash.display.MovieClip;
dynamic public class BoxClass extends MovieClip
{
  public function BoxClass(){}
}
}
ちなみにパブリッシュ設定の ActionScript 3.0 「設定」 内の
ステージのインスタンスを自動宣言にはチェックを入れておく。

これで書き出すと以下のコンパイルエラーが出力される。
説明:1046: 型が見つからないか、コンパイル時定数ではありません。 : TextField。
タイムラインかクラスファイル内に
import flash.text.TextField;
が必要とのこと。

つづく…

投稿者 michi : 2007年09月04日 12:39

トラックバック

このエントリーのトラックバックURL:
http://blog.seyself.com/system/mt-tb.cgi/108

コメント

こんにちは。ColorMath使わせていただいています。
それについてコメントしたかったのですが、該当するページがなかったのでこちらに書かせていただきました。

サンプルコードでは下記のようになっていますが、
HSVが 24 100 50 の場合、RGBは 128 51 0
になるのではないでしょうか?

trace( ColorMath.convertRGB( 24, 100, 50 ) ); // 出力 : 255,102,0

こちらの場合も、0xFF6600はHSVで 24 100 100
になるのではないでしょうか?

rgb = ColorMath.toRGB( 0xFF6600 );
trace( ColorMath.convertHSV(rgb[0],rgb[1],rgb[2]); // 出力 : 24,100,50

Photoshopで調べたのですが、もし勘違いでしたら申し訳ありません。

投稿者 ダダ : 2007年09月04日 04:50

調べてみました。
ホントですね。
すいません。結構計算ガタガタですね。
なんかグレーとかならないし。
また時間とって直しておきます。
わざわざ教えていただきありがとうございます。

投稿者 michi : 2007年09月04日 11:45

http://snippets.libspark.org/trac/browser/michi/as2/src/com/seyself/math/ColorMath.as?rev=57

修正をアップしておきました。

いやあ、それにしてもこのブログにまさかコメントがあるとは思ってもみなかったので、ちょっとビックリでした。

投稿者 michi : 2007年09月04日 12:47

修正ありがとうございます!
お節介とは思いつつも、せっかく便利なモノを公開してるのに
一部の不具合のせいで使われないのはもったいないと思い、
指摘させていただきました。

本日公開した拡張パネルでColorMathを思い切り使わせていただいております。
http://snippets.libspark.org/trac/wiki/dada/colorPickerPS

投稿者 ダダ : 2007年09月05日 10:36

コメントしてください




保存しますか?