メイン コーダーズルーム【スクリプト系】 stageHeight, stageWidthが適用できません・・ | 投稿するにはまず登録を |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
tetsuo_119 | Åê¹ÆNo.45591 投稿日時: 2010-8-26 17:42 |
新米 居住地: 投稿: 10
使用環境:
|
Re: stageHeight, stageWidthが適用できません・・ >BG_mc.width = stage.stageWidth;
>BG_mc.height = stage.stageHeight; これだと、ユーザーPCのスクリーンサイズによって、 画像が伸縮されてしまいます。 画像を、縦横比「等倍」で伸縮させればOKですよ。 |
hide33 | Åê¹ÆNo.45571 投稿日時: 2010-8-25 9:16 |
半人前 居住地: 投稿: 39
使用環境:
CS4 10.6 |
Re: stageHeight, stageWidthが適用できません・・ ひろゆきさんの仰るとおりだと思います。
リキッドレイアウトで検索するといいですよ。 |
ひろゆき | Åê¹ÆNo.45567 投稿日時: 2010-8-24 16:02 |
ちょんまげら 居住地: 東京砂漠 投稿: 4403
使用環境:
10.8.5 Flash Professional CS4/CS6/CC Safari 6.1 |
Re: stageHeight, stageWidthが適用できません・・ trace などして確認しましょう。 一度に、たくさんのことをやろうとしていませんか? ステージサイズをウィンドウサイズに合わせる、いわゆる「リキッドレイアウト」を実現したいのであれば、 まずは、プログレスバーは混乱を招くだけなので、この際、棚上げした方が良さそうに思います。 そのうえで、「リキッドレイアウト」をサイト内検索してみては? 少なくとも、現状でのスクリプトを拝見しても、リサイズに対応されていません。
|
mojiro- | Åê¹ÆNo.45566 投稿日時: 2010-8-24 15:35 |
新米 居住地: シアトル 投稿: 2
使用環境:
OS: Win Vista Home 32Bit ソフト:Flash CS4 ブラウザ:Google Chrome(製作過程では動作が速いので) |
stageHeight, stageWidthが適用できません・・ はじめまして。
フラッシュほぼ初心者ですが、WEBなどで勉強しつつ、どうにかこうにかフルスクリーンのサイト作成に挑戦しています。 大きなステージと背景(1920x1200)を用意しておいて、左上あわせにした上で、ブラウザ領域にあわせ、 背景のクリップ(BG_mc)だけを拡大・縮小表示させようとしているのですが、これだけでもう1週間ほど費やしてしまいました・・。 ネットで見つけたもっともシンプルな例では、 stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; BG_mc.width = stage.stageWidth; BG_mc.height = stage.stageHeight; となっていますが、リサイズは適用されず、さらに背景が読みこまれずに、プログレスバー終了後に停止してしまいます。 以下、なんとか途中停止はしなくなったものの、あいかわらずリサイズが適用されない、現状のスクリプトです。 //--------------- progress bar ------------ var imageURL:String = "Main.swf"; var request:URLRequest = new URLRequest(imageURL); swfLoader.scaleContent = true; swfLoader.load(request); progressBar.source = swfLoader; progressBar.addEventListener(ProgressEvent.PROGRESS,progressHandler); progressBar.addEventListener(Event.COMPLETE,completeHandler); function progressHandler (event:ProgressEvent):void{ status_txt.text = int(event.currentTarget.percentComplete) + "%"; } function completeHandler (event:Event):void{ progressBar.removeEventListener(ProgressEvent.PROGRESS,progressHandler); progressBar.removeEventListener(Event.COMPLETE,completeHandler); removeChild(progressBar); } //---------------- stage setup --------------- stage.showDefaultContextMenu = false; Security.allowDomain("*"); stage.scaleMode = StageScaleMode.NO_SCALE; stage.align = StageAlign.TOP_LEFT; var BG_mc:MovieClip = new MovieClip(); BG_mc.addEventListener( Event.ADDED_TO_STAGE, function(){trace( BG_mc.stage );} ); addChild( BG_mc ); BG_mc.width = stage.stageWidth; BG_mc.height = stage.stageHeight; //-------------------------------------------- なにか基本的なところで間違えているのでしょうか? そもそも、現状のブラウザ領域を取得するには、stage.stageHeightとstageWidthでよいのでしょうか? いろいろと似たようなサンプルをみて試してみたのですが、どうしてもうまくいきません。 どなたか教えていただけないでしょうか? よろしくお願いします。 |
スレッド表示 | 古いものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |