• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:パーセントで配置したフラッシュについて)

フラッシュを配置する方法とは?

このQ&Aのポイント
  • フラッシュについてのサイトを参考にしながら、ブラウザ内に配置する方法を知りたいです。
  • 背景画像を使って透過フラッシュを配置する方法について知りたいです。
  • ブラウザ内に配置したフラッシュで画面の拡大縮小に影響を与えずに固定表示する方法を教えてください。

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

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

まず, >> 一部分だけを固定表示にする事が出来るのでしょうか? と書かれている部分ですが,逆に考えます。 全部が固定表示だと考えれば簡単で,それにヒントもそこら中にあります。 全部が固定表示だと,メインムービー(_root)の フレーム1 に ---------------------------- //ムービーの拡大・縮小なし Stage.scaleMode = "noScale"; ---------------------------- これだけです。 例えば,新規ドキュメントを作成して, ステージの中央に「赤い丸」でも書いてください。 「太陽」だということにしておきます。 その「太陽」をムービークリップシンボルに変換し(変換しなくても良いですが), メインムービーのタイムラインに Stage.scaleMode = "noScale"; と書いてパブリッシュ。 「太陽」は画面中央に固定されたままになります。 その他詳細は次のURLを参考にしてみてください。 Stage.scaleMode 「Stage.scaleModeプロパティ」 http://www.fumiononaka.com/TechNotes/Flash/FN0408002.html その他, 「質問:htmlからswfファイルへのリンクについて」 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1298908  ↑教えて!goo  ↓OKWave (同じです) http://okwave.jp/kotaeru.php3?q=1298908 ひょっとしたら,したい内容というのは,以上で解決かもしれません。 解決かもしれませんが,少し難しい?のはステージのサイズに合わせて,「太陽」以外を拡大縮小させる方だと思います。 以下は,ステージの大きさに合わせて,他のオブジェクトを拡大縮小させる方法です。 ======================================== 上で描いた「太陽」の下に緑色の塗りで「山」を描いてみてください。 ステージ上を図示すると下のような感じでしょうか。  □□□□□□□□□□□□□□□□□□□□  □□□□□□□□□□□□□□□□□□□□  □□□□□□□□□□□□□□□□□□□□  □□□□□□□□□□□□□□□□□□□□  □□□□□□□□□□□□□□□□□□□□  □□□□□□□□□□□□□□□□□□□□  □□□□□□□□□■■□□□□□□□□□  □□□□□□□□■■■■□□□□□□□□  □□□□□□□□■■■■□□□□□□□□  □□□□□□□□□■■□□□□□□□□□  □□□□□□□□□□□□□□■■□□□□  □□□□■■□□□□□□□■■■■□□□  □□□■■■■□□□□□■■■■■■□□  □■■■■■■■■■■■■■■■■■■□  □■■■■■■■■■■■■■■■■■■■  ■■■■■■■■■■■■■■■■■■■■ そして描いた「山」全体を選択して,ムービークリップシンボルに変換してください。 そして,そのムービークリップを選択し,下のプロパティパネルで何かインスタンス名を付けてください。 ここでは, yama というインスタンス名を付けたとしておきます。 そして,メインムービー(_root)のタイムラインの フレーム1 に以下のようなスクリプトを書いてみてください。 「山」の大きさが画面の大きさによって変わると思います。 ------------------------------------------- //ムービーの拡大・縮小なし Stage.scaleMode = "noScale"; //山の縦横比を算出 yama_h = _root.yama._height/_root.yama._width; //リスナーオブジェクトの作成 myListener = new Object(); //ステージの横幅によって山の大きさを変える myListener.onResize = function() { _root.yama._width = Stage.width; _root.yama._height = yama_h*_root.yama._width; }; //上のメソッドを呼び出す Stage.addListener(myListener); ------------------------------------------- 画面に合わせて大きさを変更したい部分がもっとある場合は,function の中などのスクリプトをオブジェクトの数だけ付け足して行っても良いですし, yama の中にさらにムービークリップを入れて行けば,上のままのスクリプトで良くなります。 少し形が違いますが,こちらのURLが参考になるかもしれません。 「Stage.onResizeリスナーイベント」 http://www.fumiononaka.com/TechNotes/Flash/FN0307003.html 上のスクリプトは,画面の大きさを監視していて,画面の大きさが変わったときに,オブジェクトの大きさを変えるもので,少々理解しにくいかもしれません。 もし,使いにくいと思われたら,次のようなスクリプトでもかまわないと思います。 ------------------------------------------- //ムービーの拡大・縮小なし Stage.scaleMode = "noScale"; //山の縦横比を算出 yama_h = _root.yama._height/_root.yama._width; //1フレーム進む時間に1回以下を実行 this.onEnterFrame = function() { _root.yama._width = Stage.width; _root.yama._height = yama_h*_root.yama._width; }; ------------------------------------------- これで行くと,ずっと同じスクリプトが実行され続けるので,余分なCPUを使い続けることになりますが, 数個のオブジェクトでは,さほど問題にならないと思います。 また,メインムービーのフレームのスクリプトではなく,個々のムービークリップに書いても良いと思います。

pochitarou
質問者

お礼

参考になりました。お礼が遅れて済みません。 どうもありがとうございました。

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

関連するQ&A