写真館作成におけるボタンの入れ替え方法

このQ&Aのポイント
  • Flash MX 2004を使用して写真館(アルバム)を作成しています。写真を表示するステージと10個のボタンを配置し、ボタンをクリックすると写真をステージに写すようにしています。ボタンの色を変化させる方法について教えてください。
  • 1つのswfファイルに1つのステージと10個のボタンを配置しています。ボタンをクリックすると写真をステージに写すようにしていますが、クリックしたボタンを識別するためにボタンの色を変化させたいです。具体的なアクションについて教えてください。
  • Flash MX 2004を使用して写真館(アルバム)を作成しています。ボタンをクリックすると写真をステージに写すようにしていますが、クリックしたボタンを識別するためにボタンの色を変化させたいです。アップ状態とオーバー状態で色を変える方法について教えてください。
回答を見る
  • ベストアンサー

ボタンの入れ替え

Flash MX 2004です。 今、写真館(アルバム)を作成しています。 1つのswfファイルに1つのステージ(写真を表示させるところ)と10個のボタン(仮に写真10枚とします)を配置して各ボタンを 「on (release) 」で写真をステージに写すようにしています。ボタンの色は「アップ」→緑、「オーバー」→青です。 (ボタンのサイズはもちろん統一しています)そこまでは出来るのですが、1度クリックしたボタンは識別できるように 「アップ」→赤、「オーバー」→青としたいのですが、どんなアクションを加えたらいいのか、いろいろ調べたんですがわかりません。 どなたかわかる方がおられましたら、よろしくお願いします。 (ちょっとズレてるかもしれませんがHTMLで言うと「vlink」みたいな感じですかね?)

  • Flash
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
noname#35109
noname#35109
回答No.1

基本的にそういう勝手に作ったルールは, Flash作成側でゼロから用意しないとなりません。 >> どんなアクションを加えたらいいのか 当然,そんなアクション(スクリプト)も用意されていないので, 自分で考えて仕組みを作るしかありませんね。 と言っても, 調べるも何もなく,ちょっと考えてください。 そうすればいくらでも方法は出て来ると思います。 組み合わせまで考えると,本当に無数の方法があります。 方法がありすぎて回答のしようもありませんが,1例だけ。 ムービークリップ内にボタンを用意し, ムービークリップ内のフレームを動かして, 1度目と2度目以降を違うボタンにすり替える。 手順 --- 1 --- 「アップ」→緑、「オーバー」→青 のボタンをさらにムービークリップに変換する。 --- 2 ---  そのムービークリップをダブルクリックし,ムービークリップ内の編集に入り, タイムラインを2フレーム2レイヤーにする。  □ レイヤー 筆・・|○  []| ←スクリプト用レイヤー  □ レイヤー 筆・・|●//[]| ←ボタン用レイヤー --- 3 --- ボタン用レイヤーの2フレームをキーフレームにし, 「アップ」→赤、「オーバー」→青 のボタンを用意する。  □ レイヤー 筆・・|○ []| ←スクリプト用レイヤー  □ レイヤー 筆・・|●|●| ←ボタン用レイヤー --- 4 --- スクリプト用レイヤーのフレーム1に stop(); を書く。 --- 5 --- 「アップ」→緑、「オーバー」→青 のボタンに on (release) { // ←写真を表示するスクリプトをココに書く this.gotoAndStop(2); } と書く。 --- 6 --- 「アップ」→赤、「オーバー」→青 のボタンに on (release) { // ←写真を表示するスクリプトをココに書く } と書く。 以上で出来上がり。 ただし,ムービークリップの中にボタンが入っているので, 階層が変わるため, 相対パスもしくはパスなしでスクリプトを書いている場合は, 絶対パスにしたほうが間違えにくいかもしれません。 例 on (release) { photoMC1.loadMovie("p1.jpg"); }  ↓↓↓変更↓↓↓ on (release) { _root.photoMC1.loadMovie("p1.jpg"); } =========================== 何と言うことはないでしょう。 こんなのを考えるだけです。 ボタンは最初からボタンシンボルで作らず,ムービークリップで作っておいて, クリックされる度に違うフレームに飛んでも良いですし, クリックするとそのボタンの _visible を false にして, その代わりに同じ座標に違うボタンを持ってくるという方法も考えられますし, 変数フラグを使って切り換えても良いですし, setRGB なんかで,ムービークリップの色を変えても良いかもしれません。 http://www.fumiononaka.com/TechNotes/Flash/FN0307005.html 書かれているようなことは調べてわかることではなくて,考えることだと思います。 私は逆に 1度目のボタンと2度目以降のボタンの色を変えようと思った(考えた)ことがなかったです。 しくみを考えるより,そういう発想が出てくること自体の方がスゴイと思います。 発想はすばらしいのですから,あとは仕組みを考えてください。 そういう根本的なものの発想よりずっと簡単です。

nitro2106
質問者

お礼

上記の方法で理想の状態になりました。 変に難しく考えすぎてました。上記だとボタンの数が増えても対応できそうです。 ありがとう御座いました。

関連するQ&A

  • ボタンのパブリッシュ方法

    Flash8を使用しています。 作成したボタンをステージに配置し、Action Scriptを設定後にswf形式でパブリッシュしています。 Dreamweaverで利用したいので、ボタンサイズぴったりにパブリッシュしたいのですが、ステージのサイズをボタンと同じサイズに変更する他に良い方法がありましたたら、教えてください。

  • ボタンを押した時、外部swfを読み込み

    ムービークリップ内のボタン(写真のサムネイル)を押した時、外部.swf(写真やコメントを書いたswf)を読み込もうとしております。 _rootに空のムービークリップを配置し、インスタンス名を load_mcと指定。 _rootに配置したムービークリップの中に配置してあるボタンに on (release) { this._parent.load_mc.loadMovie("comment.swf"); } と書きました。しかしボタンを押してもcomment.swfが表示されません。 解決方法をお教えください。よろしくお願いいたします。

  • FLASH道場の透明ボタンについて。

    http://www2.netwave.or.jp/~light/ このFlash道場様の、基本編「透明ボタン」の解説部分に、 /*-- 以下引用 --*/ では、ステージで作っていきましょう。アップ_1はグラフィックシンボルで作っています。 アクションを書き込むためにプロパティでボタンに変換します。 中略 ボタンとなったアップ_1に下記のアクションを入れます。 /*-- 引用終わり --*/ とありますが、ボタンに変換したらアクションを入れることができません。やり方がいけないのでしょうか? ボタンに変換すると、「アップ・オーバー・ダウン・ヒット」の枠が表示され、そこのアップのところで右クリックしてアクションを選ぶと選ぶべき関数が不透明になって選択することが出来ませんでした。 ここで解説している、「アクションを入れる」とは、どういった操作のことを言うのでしょうか? FLASH初心者で、ここのサイト様で勉強しているものです。 Macromedia FLASH MX を使用しています。

    • ベストアンサー
    • Flash
  • 動くボタンの作り方

    MX2004を使っています…。 ステージ上のa_mcの中にb_mcがあってb_mcには onClipEvent (enterFrame) { this._rotation +=2 } というスクリプトを記述しました。 これでステージ上の動きはうまく行っていて さらに、それにb_mcにボタン機能をつけたいと思い、 b_mcの中にボタンクリップ→c_mcをつくりました。 そのボタンクリップにつけたい動きは、そのボタンにマウスを重ねると _rootに配置した、空のhyouji_mcに外部の0000_swf現れ、マウスを放すと消えるというものなのですが いろいろ本などをみてとりあえずそのボタンクリップ→c_mcに on(rollOver){ loadMovie("0000.swf",hyouji); } on (press) { getURL("url"); } というスクリプトをつけてみました。 getURLは正常に動くのですが外部ファイルは読み込めません… ちなみに、_rootに配置した、空のhyouji_mcにはhyoujiのインスタンス名を入れています。あと、swfフィアルは、元のファイルと同じところに入れています。 スクリプト勉強中で原因がわかりません… mcの入れ方など、間違っているところがありましたら ご指摘よろしくおねがいします… 他のスクリプトをみても、自分のファイルにうまく応用できない状態です…_rootに配置した、外部swfがマウスを放すと消えるというスクリプトも教えて頂けるとありがたいです。 宜しくお願いします。

    • ベストアンサー
    • Flash
  • 外部swfファイルの閉じ方

    メインに"stage2というmcを配置し、123.swfを読み込むボタンを配置しました。 ボタンスクリプト: on (release) { _root.construction(); loadMovie("123.swf", "_root.stage"); _root.stage.swapDepths(5); for (i=1; i<=4; i++) { _root["m_"+i]._visible = false; } 開いた外部swfファイルを閉じる設定をしたいのですが、どのようにすればよいでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • Flash
  • FLASHで、ボタンの押しっぱなしについて

    ステージ上に配置したボタンを押すことでムービークリップを動かすことはできるのですが、ボタンを押しっぱなしにしてる間ムービークリップが移動しつづけるようにするにはどうしたら良いのでしょうか? whileなどを使って色々試してみましたがどうもうまく行きませんでした。 ご存知の方がいましたらゼヒ教えてください。 環境はwin版FLASH MXです。

  • 外部swfが「unloadMovieNum」で削除できません。

    外部swfの読み込み再生は出来るのですが、 停止ボタンで外部swfの削除が出来ずに困っています。 play.swfと外部の「bgm1.swf」と「bgm2.swf」があります。 外部swfには、mp3とタイムラインでアニメーションがあります。 play.swfには、下記のように並んでいます。 ●再生ボタン1 ボタンアクション on(release) { loadMovieNum("bgm1.swf",1); } --------------------------------- ●再生ボタン2 ボタンアクション on(release) { loadMovieNum("bgm2.swf",1); } --------------------------------- ●停止ボタン(このボタンがうまくいきません) ボタンアクション on (release) { unloadMovieNum(1); } --------------------------------- FLASH作成ソフトは、Suzuka です。 unloadMovieNumでのswfの削除が出来ずに困っています。 ご回答、宜しくお願い致します。

    • ベストアンサー
    • Flash
  • FLASH MXでムービークリップをボタンではなくムービークリップ自体で操作できますか?

    いまだにFLASH MXを使っています。 やりたいことはムービークリップを作成し、マウスがそれに触ると停止し、離れると動く、といった感じにしたいのですが、どうにも上手くいきません。 他にボタンを作成しそこにアクションを設定すれば上手く動くのですが ボタンではなく自分自身で操作できないかと思っています。 ボタンのシンボルをムービークリップ(movie)化 それをステージに配置しアクションを設定 アクションイメージ on (rollOver) { movie.stop(); } on (rollOut) { movie.start(); }

  • 印刷ボタン

    Flash8を使用しています。 flaファイルを3個(flaA,flaB,flaC)作って各々のswfファイルをHTML上に配置いたしました。 flaA上に「印刷ボタン」を作って HTML上の操作で表示画面ABCを印刷したいのですが、「印刷ボタン」をクリックした場合にA画面のみの印刷となり、BCが印刷されません。 印刷ボタンのスクリプトは、 on(release){ print("MC","bmax"); } ですが、上記のスクリプトでは、A画面しか印刷されません。 "MC"の部分でABCの全画面を指定するのだと思いますが、スクリプトの書き方が分かりません。尚、印刷画面がA4版用紙に縮小印刷されるとなお良いのですが。 宜しくお願い致します。

    • ベストアンサー
    • Flash
  • フォームの送信ボタンについて

     Fireworks MX のボタン作成機能を使い、イメージをロールオーバーさせ、[ファイル]->[書き出し]で「HTMLとイメージ」に書き出したボタンを、perlCGIのフォーム送信のボタンにしたいのですが、どのように記述したらよいのかが分かりません。  DreamWeaver MX の機能を使ってそれらボタンをフォームのボタンとして設定することは可能でしょうか? もし可能であればどのような操作をすればCGIのボタンとして設定することができるのか教えて下さい。  また、もし手書きでHTMLのソースを変更することになるのであれば、どこをどのように書き換えれば良いのかご存知の方がいらっしゃいましたら教えて下さい。  よろしくお願いします。

    • ベストアンサー
    • HTML

専門家に質問してみよう