• 締切済み

flashの画面全体で表示

はじめまして。 質問させてください。 flashで背景画像のみを画面いっぱいに表示して 他のムービクリップはブラウザの大きさに左右されずサイズと場所を固定したくて 下記のように記述しました。 ---------------------------------------------- bg_h = _root.bg._height/_root.bg._width; Stage.scaleMode = "noScale"; Stage.align = "TL"; function setPosition() { _root.bg._width = Stage.width; _root.bg._height = bg_h*_root.bg._width; _root.rogo._x = 10; _root.rogo._y = 10; } ls = new Object(); ls.onResize = setPosition; Stage.addListener(ls); ---------------------------------------------- 上記だとブラウザのサイズが縦長になってしまうと下に大きく白い余白が空いてしまいます。 "noBorder"の使った時のように比率の差が大きい方のサイズに合わせたいのですが どうすれば良いのかわかります。 ご存知の方がいらしたら教えて頂ければと思います。 よろしくお願い致します。

みんなの回答

回答No.4

ごめん…まちがえた… ここのとこ ↓ bg._width=Stage.width; bg._height=bg._xscale; こっちで ↓ bg._width=Stage.width; bg._yscale=bg._xscale; ですね。

takuro000
質問者

お礼

わざわざ細かいところまでお教え頂き大変感謝しております。 無事ページも作る事ができました。ありがとうございます。

  • suzuko
  • ベストアンサー率38% (1112/2922)
回答No.3

スクリプトでなく、めっちゃイージーな方法なら「プロパティ」で背景画像の下端と同じ色を「背景」に指定するがありますが・・・^^;

takuro000
質問者

お礼

suzukoさん お礼が遅くなってしまいすいません。 ありがとうございます。そんな方法もあるとは!勉強になりました。

回答No.2

例えば下記とか…あんましきれいじゃないけど… Stage.scaleMode = "noScale"; Stage.align = "TL"; _root.rogo._x = 10; _root.rogo._y = 10; ls = new Object(); ls.onResize = setPosition; function setPosition(){ if(Stage.width<=Stage.height){ bg._height=Stage.height; bg._xscale=bg._yscale; if(bg._width<=Stage.width){ bg._width=Stage.width; bg._height=bg._xscale; } }else{ bg._width=Stage.width; bg._yscale=bg._xscale; if(bg._height<=Stage.height){ bg._height=Stage.height; bg._xscale=bg._yscale; } } } Stage.addListener(ls);

回答No.1

if文を使って Stage.width が Stage.height より大きければ処理1、小さければ処理2 みたいにしてみたらどうでしょ?

takuro000
質問者

お礼

ご回答頂きありがとうございます。 大変恐縮なんですがaction scriptがあまりわからず試行錯誤して今回のも作成致しました。if文もあまり使ったことがないので具体的にはどのようにすれば良いのわかりません。 申し訳有りませんがもう少し具体的にご教授頂けると大変助かります。 宜しくお願い致します。

関連するQ&A