• 締切済み

flsh クリックで表示させたり消したり

今 flashでボタンを作ってます。 1つのボタンで クリックすると画像Aが表示され もう一回 クリックすると画像Aが消える. そんなのがつくりたいんですが。 コードスペニックで クリックして画像を表示する事はできたんですが、 消す事ができません。 どうぞ よろしくお願いします。

みんなの回答

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

#1です。 #1の補足に書かれていらっしゃる内容のスクリプトからすると (そのままの現状が維持できていれば), スクリプトを次のように変更すれば 元のご質問で書かれていらっしゃるような内容のことができると思います。 ------------------------------------- //カウント用の変数 cnt を作成し初期値を 0 とする var cnt:int = 0; //変数 libImage の宣言 var libImage:MyImage; //「text01」をクリック時に関数fl_ClickToLoadImageFromLibrary_7を実行 text01.addEventListener (MouseEvent.CLICK, fl_ClickToLoadImageFromLibrary_7); //関数fl_ClickToLoadImageFromLibrary_7の定義; function fl_ClickToLoadImageFromLibrary_7 (event:MouseEvent):void { //もし 変数 cnt の値が 0 であれば if (cnt == 0) { // MyImageクラスのインスタンス libImage を作成 libImage = new MyImage(); //そのlibImageの座標を(50,30)に設定 libImage.x = 50; libImage.y = 30; //メインタイムラインにlibImageを配置 addChild (libImage); //変数 cnt の値を 1 にする cnt = 1; } else if (cnt == 1) { //もし 変数 cnt の値が 1 であれば libImage を非表示にする libImage.visible = false; //変数 cnt の値を 2 にする cnt = 2; } else if (cnt == 2) { //もし 変数 cnt の値が 2 であれば libImage を表示する libImage.visible = true; //変数 cnt の値を 1 にする cnt = 1; } } ------------------------------------- #1の補足以降に何かあがくなどして インスタンス名やクラス名を変えていたら 上記スクリプトでは無事に動作しないと思います。

neoQ
質問者

お礼

ありがとうございました。

neoQ
質問者

補足

できました。 思ってたとうりの動きになりました。 ほんと ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

コードスペニック ではなくて コードスニペット でしょうね...。 Flash でその言葉(コードスニペット)が登場したのは Flash CS5 が初めてで 確か ActionScript 3.0 設定のときのみにその機能が使用できたと思います。 (私は Flash CS5 を持っていないため その他 詳細は不明です。) ※ Flash は バージョン が大切です。   たまたま コードスペニック? という  1バージョン限定用語 が使われていたため  Flash CS5 の ActionScript 3.0 だと推測できましたが  普通は バージョン を書かないと回答できませんよ。。。 > クリックして画像を表示する事はできたんですが、 その表示させた方法の逆をすれば良いと思いますが。。。 その表示させた方法がわからないため何ともいえませんね。 または消すとはどういうことかをちゃんと書くか。 例えば 何らかの形で画像を addChild して表示させたのでしたら その 画像の親階層に対して removeChild で画像を消す方法がまず考えられます。 Google検索 「removeChild ActionScript 3.0」 http://www.google.co.jp/search?hl=ja&q=removeChild+ActionScript+3.0 また、画像インスタンス の visible プロパティ を false にしても良いと思います。 Google検索 「visible false ActionScript 3.0」 http://www.google.co.jp/search?hl=ja&q=visible+false+ActionScript+3.0 上のように検索しますと たまたまちょうど「ActionScript 3.0におけるパフォーマンス向上のヒント」というページが一番上にヒットしました。 「ActionScript 3.0におけるパフォーマンス向上のヒント」 http://www.adobe.com/jp/devnet/flash/articles/ac3_performance.html 上記ページの 「04 visibleとalphaとremoveChild()」辺りが結構参考になるかと。 http://www.adobe.com/jp/devnet/flash/articles/ac3_performance.html#04 しかし非表示にすると言ってもそれだけではありません。 例えば 画像 の x座標 を ステージ外 のとんでもない場所に移動させても非表示になりますし また例えば 画像 の 大きさ を 0 にしても非表示になりますし また例えば 画像 の存在しないフレームに gotoAndStop() しても非表示になりますし また例えば 画像 の上に別の画像を作成しても非表示になりますし  …まだまだ方法はあります… というわけで 「消すとはどういうことかをちゃんと決める」ことがまず最初にするべきことでしょうね。

neoQ
質問者

補足

使用しているのは、cs5です。 flashは 初心者で actionscriptに関しては ぜんぜん理解していません。 なので コードスニペットみたいな 簡単な操作を使ってます。 画像の表示のしかたは コードスニペットにある 『クリックをして ライブラリーからイメージをロード』という所を選択すると flashが勝手にアクションパネルに書いてくれるので 画像のクラス名を記入して配置位置を記入するという方法を使ってます。 text01.addEventListener(MouseEvent.CLICK, fl_ClickToLoadImageFromLibrary_7); function fl_ClickToLoadImageFromLibrary_7(event:MouseEvent):void { var libImage:MyImage = new MyImage(); libImage.x=50; libImage.y=30; addChild(libImage); } アクションパネルはこんな感じです。意味は全然理解していませんが これでちゃんと表示されました。 画像を非表示というのは、クリックしたら画面から消えればいいんですが 色んな方法があるんですね。 この 画像を表示 非表示の操作を一つのボタンでやりたくて、 参考になる様なリンク先があれば良いんですが 見つけようと思うとなかなか見つからなくて、申し訳ないです。

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

関連するQ&A

  • クリックの回数で違う場所の表示を変えたいんです。

    例えば、NEXTボタンを作って、そのボタンをクリックすると、右にAの画像が出て、また同じボタンをクリックすると、Aの画像とは違う場所にBの画像が出てくる、その時出来ればAの画像は表示されないようにしたいのですが・・・こんな感じで同じ場所のクリックの回数でそれぞれ違う場所に画像を表示させたりって、できるんでしょうか? 誰か教えてください。お願いします。

  • ボタンをクリックする度にランダムな画像を表示には

    FLASHで簡単なゲームを作っています。ボタンをクリックするとランダムな画像(もしくはシーン)を表示させるにはどうすればよいでしょうか。よろしくお願いします。

    • ベストアンサー
    • Flash
  • FLASHのボタンをクリック後にウィンドウが表示されるプログラム

    今、FLEXを使ってFLASHを作っています。 で、ここで質問なんですが、FLASH上にあるボタンをクリックしたら新たにFLASHのウィンドウが表示されるものを作りたいと思っているんですが、どのように記述したらいいのかわかりません。 是非ともこの私めに助言を与えてくださいまし。

  • ボタンクリックで画像を替えたい

    はじめまして。 ホームページを作成しているのですが、解決できない問題があり 皆様方のお知恵を拝借したく投稿させていただきました。 どうかお力添えをいただけますと幸いです。 具体的な内容としまして、 大きな画像(400px×125px)の下に横並びでボタン(80px×25px)を5つ配置しているのですが そのボタンをクリックすると大きな画像部分がクリックしたボタンに あわせて入れ替わって表示されるようにしたいのです。 ボタンA → 画像A ボタンB → 画像B ボタンC → 画像C ボタンD → 画像D ボタンE → 画像E という風に変化させていのですが 今ひとつ方法がわからずに苦しんでいます。。 これをFLASHをつかわず作成したいと考えています。 説明不足、言葉足らずなどあるかとは思いますが どなたかお力添えをいただけませんでしょうか。 よろしくお願いいたします。

  • Flachを表示できないパソコンがあり、それを表示させる方法

    結論はFlacnを表示できないという事です。 詳しい内容については下記をご覧になって下さい。 Flachを使っていろいろとホームページを華やかにしているのですが、友達に確認してもらおうと思い、そのページを見た時点でFlachを見る事が出来ませんでした。 最初はFlachPlayerがインストールされていなのだと思いインストール作業を試みました。 ここで驚きました。 フラッシュサイトからインストール画面が表示されます。 通常だとフラッシュインストールボタンをクリックすると次の画面でフラッシュが動き出すと同時にインストール完了。だと思いました。 しかし、フラッシュインストールボタンをクリックするとフラッシュが動き出すどころか、フラッシュ自体が表示されないのです。 表示されない状態とは、ちょうど画像(gif,jpeg)を表示させる際にパスを間違えてしまい小さい×マークが表示される状態です。 この状況を打開できるアドバイスを頂けないでしょうか?お願いします。

  • インラインフレームにボタンクリックで表示させたいです。

    こんにちは。いつもお世話になっております。 <body>タグの中に <a href="javaScript:chaneIFrame('URL')">飛ぶ</a> として、インラインフレーム表示させる事はでできました。 これを、文字クリックではなくて、ボタンクリックで 表示させるようにする方法はありませんでしょうか? 検索してみたのですが、サンプルはどこも文字クリック になっていて、ボタンでのインラインフレーム切り替え がなくって・・・・。 どうかご指導よろしくお願いいたします。

  • 画像がランダムに表示されるFLASH

    いつもお世話になっています。 以下のようなFLASHを作りたいのですが、やり方がわからず困っています。 (1)リロードするたびにランダムで切り替わる画像1~6がある (2)画像の横にボタン1~6があり、マウスオーバーするとそれぞれ画像1、画像2…と表示される (3)ボタン1~6をクリックするとwebページ1~6へジャンプ(リンクさせている) 上記目的のうち、(2)(3)については完成しています。具体的にはAフレームには画像1、Bフレームには画像2…と配置し、ボタン1~6のアクションスクリプトにそれぞれ「マウスオーバー時にAフレームに飛ぶ」と記述しています。そしてメインのタイムライン1フレーム目にはアクションスクリプトに「ボタン1がクリックされたらwebページ1へ、ボタン2がクリックされたらwebページ2へ…」と記述しています。 これで(2)(3)の目的は果たせており、問題は(1)です。 ランダム表示される画像があり、ボタンのマウスオーバーで指定した画像が表示され、クリックでwebページへとぶ、ためにはどこにどんな記述をすれば良いのでしょうか? ちなみに作ったFLASHがサイトのトップページの一部となり、クリックで飛ぶwebページはそのサイト内です。 アドバイスいただけると助かります。 どうかよろしくお願いします。FLASHは上記がほぼ初めての挑戦である初心者です。

  • ボタンをクリック後、画像を表示させるには?

    FlashMXをでページを作っています。 あるページにいくつかボタンがあるとします。 一つのボタンをクリックすると、同一ページ内の決まった位置に画像が出てきます。 しかも次のボタンを押すまでは、その画像は表示されたままなんです。 こんなボタンを作りたいんですが、どうしたらいいのか分かりません。 ボタンと、表示させるイメージは準備してあります。 この二つをどう組み合わせればよいのでしょうか? お願いします。

    • ベストアンサー
    • Flash
  • ボタンクリックで画像を表示

    質問です。 ボタンをクリックして同じFlash内に画像を出したいのですが うまくいきません。 on (release) { tellTarget ("./mem") { gotoAndStop("kk"); } } クリックするとmemレイヤーのkkというムービークリップを 出すように設定したつもりなのですが、多分このプログラムが 間違っていると思うのですが、どこが間違っているのでしょうか。 教えてください。 お願いいたします。

    • ベストアンサー
    • Flash
  • ボタンのクリックについて

    ボタンのクリックについて質問です。 CreateWindow()を使ってボタンを作成して表示させているのですが、 ボタンに画像などを表示させている時にクリックをすると、 一瞬、画像などが表示されていない状態になります。 裏画面処理でやってみたりしたのですが出来ませんでした。 やりたい事としては、 http://hp.vector.co.jp/authors/VA018351/ のようにボタンをクリックしても、ちらつきがない様にしたいです。 開発環境 XP Visual Studio 2005 C、C++