• 締切済み

AS2.0でライブラリの画像を読込

外部ファイルの画像がなかった場合ライブラリから該当の画像をかわりに表示させたいです。 検索してみたのですが見つからず、どうやらAS3.0ではできるようなのですが、 同じ事を2.0でもできますか? どのようにやれば良いのでしょうか。

みんなの回答

  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

ご使用の Flash のバージョンを書かれていらっしゃいませんが, ご質問の内容は,ActionScript のバージョンよりも, Flash のバージョンやパブリッシュする SWF の FlashPlayer のバージョンの方に大きく依存することだと思います。 「ライブラリから該当の画像」 と書かれていらっしゃいますが, この画像がベクタ画像であればムービークリップに変換して, ライブラリよりリンケージのプロパティで識別子を付けて, ロード失敗時にそのムービークリップを attachMovie します。 これは AS1.0 でも,AS2.0 でも使用できます。 また attachMovie 自体は Flash5 からできます。 ただロード失敗をちゃんと把握するには,MovieClipLoaderクラス が必要になると思います。 MovieClipLoaderクラス は FashMX2004 以降で使用できます。 これも AS1.0 でも,AS2.0 でも使用できます。 また,ビットマップ画像であっても, ベクタ同様,ムービークリップにしてしまえば上の方法でできます。 そうではなくて, 「ライブラリから該当の画像」が, JPEG や GIF や PNG などのビットマップ画像であって, なおかつ, それをムービークリップに変換せずにそのまま代替表示させる場合のときは, Flash8以上 で使用できる BitmapDataクラス が必要になると思います。 これも AS1.0 でも,AS2.0 でも使用できますが, 一般的には AS2.0 として使用されることの方が多いと思います。 この BitmapDataクラス を使った, ActionScript2.0 形式のスクリプト例を回答します。 まず, 外部画像として SWF と同じフォルダに 「photo.jpg」 があったとします(もしくはなかったとします)。 またライブラリには 「sub_bd」 という識別子を付けたビットマップシンボル代替画像があるとします。 その場合, フレームに書くスクリプトを次のようにすると,代替表示ができます。 ////////////////////////////////////////////////////////////// // BitmapDataクラスファイルを読み込む import flash.display.BitmapData; //識別子 sub_bmd を読み込んだ BitmapDataクラスのインスタンス BD を作成 var BD:BitmapData = BitmapData.loadBitmap("sub_bd"); // MovieClipLoaderクラスのインスタンス MCL を作成 var MCL:MovieClipLoader = new MovieClipLoader(); // ロード監視用インスタンス LSN を作成 var LSN:Object = new Object(); // ロード失敗時の動作を定義 LSN.onLoadError = function(target:MovieClip) { // ロードを試みたMC の深度0 に BD を適用 target.attachBitmap(BD, 0); }; // MCL のリスナーとして LSN を登録 MCL.addListener(LSN); // 外部画像 photo.jpg を load_mc にロード MCL.loadClip("photo.jpg", load_mc); ////////////////////////////////////////////////////////////// AS2.0 は Flash MX 2004 でも使えますが, お持ちのバージョンがもし FlashMX2004 でしたら, BitmapDataを使わずに, ロード失敗時には普通にムービークリップをattachMovieしてください。 その方がスクリプトも簡単ですし, FlashPlayer7 の SWF まで下げられるメリットもあります(Mac OS9 などでも閲覧可能)。 と言いますか, Flash 8 でも CS3 でも BitmapDataを使わずに, 普通に attachMovie する方が処理なども速いと思います(多分)。

labilion
質問者

お礼

ありがとうございます。 無事解決しました~

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 画像ライブラリの写真を非表示にしたい

    Windows 8.1  (8から8.1にアップデートしてあります)   アプリ画面の『フォト』をクリックすると『画像ライブラリ』が出ます   その画像リストに、20枚くらいの写真が表示されています   二つの写真ファイルからの写真です   私の写真は200以上のファイルに分けてあります   なぜこの二つのファイルだけが表示されるのですか?   画像ライブラリに表示させたくありません   ファイルから写真を削除したくありません   別のファイルを作成して、表示されている写真をコピーしてから   表示されている写真を削除すればよいのでしょうか?   良い方法を教えてください

  • 外部画像の読み込み

    こんにちは。 いつもココではお世話になっております。 今回は、Flashの外部画像の読み込みについてです。 外部から画像を読み込み、スライドショーを行うものを作っているのですが、 一番はじめにすべての外部ファイルを読み込み、その読み込んでる時だけローダーを表示させたいのです。 画像の枚数は指定は無いです。 1,2,3....などと連番にして読み込むようにしています。 どなたかアドバイス等頂けましたらよろしくお願いします。

    • ベストアンサー
    • Flash
  • AS2とAS3の違いについて質問です。

    AS2とAS3の違いについて質問です。 今度、フルフラッシュのサイトを制作しなくてはいけないのですが、そこで必ず外部XMLを読み込むというのが必須になってきます。 更新情報や画像を読み込むようなXMLです。 以前AS2で行いましたが、どうしてもXMLをHTMLで表示する部分がうまくできませんでした。(デザイン的にできないことが多すぎて) いろいろ調べると、なかなか難しいようですね。 知人に聞いたところ、AS3で作ればそこらへんもっと作り込めると聞いたのですが、本当でしょうか? 納期の事もあり、今からAS3を学んで…となるとだいぶ不安です。 AS2でもHTMLをうまく表示できるのであれば、ご教授いただければうれしいです! よろしくお願いします。

  • 画像を切り出すライブラリ

    スキャンした画像データを切り出すライブラリを探しています。 求めているのは下記機能となります。 ・複数の不定形の紙(レシートや領収書など)をスキャンして、  画像を切り出したい。 ・スキャンは黒紙などでかぶせ、レシートの切れ目?がわかるようにする。 ・OCRは不要。 ・WindowsのServerOSで稼働させたい。 ・プログラムからの呼び出しが可能。 イメージとしてはISP社の領収書解析ライブラリが近いです。 http://www.isp21.co.jp/business/ocr-receipt.html ただ、こちらはOCR機能もついているので OCR機能付いていない安価なものがないか探しています。 何か該当するものがあればご教示他抱ければと思います。

  • as2 setMask()について

    as2 setMask()において マスクの対象となるMovieClipイメージに loadMovie()で外部画像が読み込まれている場合、 マスクでは表示されないのでしょうか 初歩的な質問ですがよろしくお願いします

  • Flashで作ったメニューを含む画像を全ページ共通にしたいのですが(外部ファイル読み込み)

    カテゴリにCSSがなかったのでここに投稿させて頂きます。外部ファイルを読み込ませて全てのページで共通の画像などを表示する方法を詳しく教えて頂きたいのですが。 Flash MXでリンクをつけたメニューを作ってそれを全てのページで表示させたいのですが外部ファイルを作って読み込む方法がスマートだと検索エンジンから辿り調べてみたら書いてあるサイトを多数見つけたのですが具体的にどう記述したらいいのかわからないのですが教えて頂けないでしょうか。.jsファイルを作る事や.cssファイルを作る事など書いてありましたが具体的に中身の記述がよく分かりません。どうかよろしくお願いします。

  • 画像ライブラリのデータ削除

    メディアセンターの画像ライブラリにある、画像が 表示する事も削除する事もできません。 おそらく、携帯の写メを加工したデータだと思うのですが、 どうにか削除する方法はないでしょうか?

  • 画像ファイルの重さ

    FLASHに画像を入れる時、軽くするにはどうしたらいいでしょうか?写真の場合、まずはJPGをライブラリーに読み込みますが、それをjpgのまま、ステージに置くのと、jpgをシンボルに変換するのではファイルの重さが違ってくるのでしょうか?また、画像の外部からの読み込みは画像の変更などが簡単にできると思うのですが、それによって、web上での表示が軽くなる、などがあるのでしょうか?外部読み込みでjpgとswfでは重さが違いますか?初心者です。写真を沢山使いたいのですが、思いページにはしたくありません。変な質問かもしれませんが宜しくお願いします。

    • ベストアンサー
    • Flash
  • FLASH8で外部画像ファイル読み込み

    ド素人です。どなたか教えて下さい。 WinXPでFLASH8 Proを使ってます。以前から外部画像ファイルをFLASHで読み込んでマスク内にアルファ0から100というように浮かび上がらせようとしているのですが、単に表示されるだけでマスクも、アルファもかかりません。表示後画像の上でその他ライブラリー内のベクター画像などでムービークリップを動かそうと思っても、外部画像ファイルが表示された時点で止まってしまいます。 どなたかご教示下さい、お願い致します。

  • 画像の外部読み込みについて

    Flash初心者です。 下地の画像を外部から読み込ませて読み込む画像の上にメニューバーなどを配置したいのですが、 表示中のメニューバーの上に画像が配置されてしまいます。 どのようにActionScriptを組めばよいのでしょうか? わかりやすい例を上げますと、化物語の公式HPみたいな感じなのですが、 http://www.bakemonogatari.com/ このサイトのmain.swfを見て頂けるとわかると思いますが、画像を外部から読み込み、トピックスなどは表示されています。

    • ベストアンサー
    • Flash
このQ&Aのポイント
  • インターネット接続中に検索結果のクリックやリンク先への遷移が遅い現象が発生しています。解決方法や設定確認について教えてください。
  • PCのネット環境はLENOVO L540で、OSはWin10(21H2)です。ネット回線はGMO光アクセス(NTT光ネクスト)を使用しており、無線ルーターはバッファローWSR-2533DHP3 Version 1.25です。
  • 現在の設定では40Mhzチャンネル幅非互換は無効、802.11a/b/gワイヤレスモードはデュアルバンド802.11a/b/g、802.11n/acワイヤレスモードは802.11ac、Bluetooth(R)AMPは無効などになっています。解決方法や有効な設定確認についてアドバイスをいただけると助かります。
回答を見る