AIRやFLASHなどを表示するのに不便なので、ブログから自作サイトに移転します。 『N2-Works移転先 』 今後はこちらで更新を行っていきます。 Loaderクラスをループ内で5つ作成し、Event.COMPLETEイベントリスナを設定すると、どうも2つしか動作してくれないようです。
この挙動だと、Loaderが読込み完了になるまでに異なるLoaderを作成してはいけないということになります。
ロード作業を行う時に時間を掛けたくないので、非同期にLoaderクラスを動作させるようにしたいのですが、同期をとらざるを得ないようですね(泣) |
AIRやFLASHなどを表示するのに不便なので、ブログから自作サイトに移転します。 『N2-Works移転先 』 今後はこちらで更新を行っていきます。 以前の記事『ActionScript3.0における値渡しと参照渡し 』で配列、クラス、オブジェクトは参照渡しになります、と書いたと思います。
これは代入した時も同様でC/C++で言うところのポインタをコピーしているのと同義となります。
上記のコードのように参照コピーの場合は元の文字列を変更すると、コピー先の情報も変更されてしまいます。これはアドレスをコピーしているだけだからです。 ただ問題なのは、ActionScript3.0の場合C/C++のように明示的なポインタ指定が出来ず、単純に代入すると参照コピーになってしまう点です。 当然、値コピーが必要な場面がありますので、値コピー関数を自作しないといけません。
結果としてC/C++と同じように行うにはByteArrayを利用しないといけないというのが分かると思います。 ValueCopyの引数と戻り値には*(ワイルドカード)を使用します。これはC/C++で言うところのvoid型のポインタと同じくどの型でも許容するものです。 必要な時は使用してみて下さい。 |
AIRやFLASHなどを表示するのに不便なので、ブログから自作サイトに移転します。 『N2-Works移転先 』 今後はこちらで更新を行っていきます。 BitmapをSpriteに配置した後、イベントリスナーを設定しようとして動作しなかったのでメモ。
addEventListenerメソッドは使用できるのでMouseEvent.MOUSE_DOWNイベントにリスナを定義したのですが、左クリックをBitmap上で実行してもリスナが動作しないのです。
おかしいと思い、例によってActionScript3.0のリファレンスで『Bitmap 』を見ると以下のような記載がありました。
なるほど『InteractiveObject 』の項を見ると、マウスとキーボードを使用してユーザーが操作できるすべての表示オブジェクトの抽象基本クラスとなっています。InteractiveObjectを継承していないのでマウスイベントを発行しないというわけです。 Bitmapインスタンスにマウスイベントを発行するように見せかけるには、透明Spriteのインスタンスでも配置するしかないですね。 |