- 締切済み
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"の使った時のように比率の差が大きい方のサイズに合わせたいのですが どうすれば良いのかわかります。 ご存知の方がいらしたら教えて頂ければと思います。 よろしくお願い致します。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- o_o_______
- ベストアンサー率42% (3/7)
ごめん…まちがえた… ここのとこ ↓ bg._width=Stage.width; bg._height=bg._xscale; こっちで ↓ bg._width=Stage.width; bg._yscale=bg._xscale; ですね。
- suzuko
- ベストアンサー率38% (1112/2922)
スクリプトでなく、めっちゃイージーな方法なら「プロパティ」で背景画像の下端と同じ色を「背景」に指定するがありますが・・・^^;
お礼
suzukoさん お礼が遅くなってしまいすいません。 ありがとうございます。そんな方法もあるとは!勉強になりました。
- o_o_______
- ベストアンサー率42% (3/7)
例えば下記とか…あんましきれいじゃないけど… 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);
- o_o_______
- ベストアンサー率42% (3/7)
if文を使って Stage.width が Stage.height より大きければ処理1、小さければ処理2 みたいにしてみたらどうでしょ?
お礼
ご回答頂きありがとうございます。 大変恐縮なんですがaction scriptがあまりわからず試行錯誤して今回のも作成致しました。if文もあまり使ったことがないので具体的にはどのようにすれば良いのわかりません。 申し訳有りませんがもう少し具体的にご教授頂けると大変助かります。 宜しくお願い致します。
お礼
わざわざ細かいところまでお教え頂き大変感謝しております。 無事ページも作る事ができました。ありがとうございます。