http://www.direct-co.com/index2.html
↑のサイトのようにブラウザの大きさを変えたときに
右上のボタン(DESIGN HOUSE/SHOP DESIGN/RENOVATION/DIRECT BAND)の様な、
そのままのボタンサイズで右側を基準に移動させる方法と、
と同時に、背景の写真の様に
一方でサイズダウンさせる方法を知りたいのですが教えて頂けないでしょうか。
要は、各MCを個別に設定する方法がわかりません。
説明が下手で分かりづらいと思いますが
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
#1 です。
> ちなみにflash CS3 AS3.0です。
わかりました。
#1でも書きましたが、
ActionScript1.0 2.0 3.0 という言語が違ってもやることの内容は同じです。
また、ポイントも同じです。
1 どうしたいのかを具体的にイメージして考える
2 考えた通りになるようにムービーを仕組む
3 仕組みが狙い通りに動くようにASコーディング
http://www.direct-co.com/index2.html
さんの場合は(場合に"限って"は)、以下のようにするとできます。
まず、【下の図】↓のように各MC(=ムービークリップの略)を配置します。
下の図の「back_mc」、「menu_mc」、「main_mc」、「footer_mc」、「logo_mc」というのは各 MC の "インスタンス名" です。
また各 MC の +印 はそのMCの "基準点" の位置を示しています。
(色分けした+印は位置を示すためにわざわざ描いてみただけで実際には描かない方が良いです)
ステージのサイズ(=ドキュメントのサイズ)はどうでも良いです。
たとえば、50×50px でも 5000×20px でも 1000×700px でも何でも良いです。
モニタの比なども全く考える必要はありません。
大きすぎても小さすぎても作りにくいはずですから、作りやすいサイズで良いです。
それら 5つのMCが登場するフレームの、任意のレイヤーのキーフレームに、
次のように書けばFlashの方は出来上がりです。
-----------------------------------------------
// ムービー内の拡大縮小なし(お決まり文句)
stage.scaleMode = StageScaleMode.NO_SCALE;
// 整列の基準を左上にする(お決まり文句)
stage.align = StageAlign.TOP_LEFT;
// 「back_mc」 の初期横幅と高さを変数に記録しておく
var bw:Number = back_mc.width;
var bh:Number = back_mc.height;
// MC を整列させる関数 arrangeMC を定義
function arrangeMC():void{
//
// ローカル変数 sw にステージの幅を代入
var sw:int = stage.stageWidth;
// ローカル変数 sh にステージの高さを代入
var sh:int = stage.stageHeight;
//
// 「menu_mc」をステージ右に配置
menu_mc.x = sw;
//
// 「main_mc」をステージ中央に配置
main_mc.x = sw/2;
main_mc.y = sh/2;
//
// 「footer_mc」をステージ下に配置
footer_mc.y = sh;
//
// 「logo_mc」をステージ右下に配置
logo_mc.x = sw;
logo_mc.y = sh;
//
// 「back_mc」をステージの "幅に合わせて" リサイズ
back_mc.width = sw;
back_mc.height = bh/bw*sw;
}
// 上で定義したarrangeMCを即実行 (初期表示用)
arrangeMC();
// 関数 stageOnResize を定義
function stageOnResize(evt:Event):void {
// 上で定義したarrangeMCを実行 (リサイズ時用)
arrangeMC();
}
// ステージにイベントリスナーを登録
//引数(ステージリサイズ時に実行、実行関数stageOnResize)
stage.addEventListener(Event.RESIZE, stageOnResize);
-----------------------------------------------
arrangeMC
あとは、パブリッシュ設定の「HTML」タブで、
サイズ を [パーセント] にして 幅×高さ を [100] × [100] にして HTML と SWF をパブリッシュすると
簡易的にはそれらしいものができます。
実際には #1 で書いたサイトのように
HTML や スタイルシート でページのマージンを 0 にしてSWF を 100% 表示させる方が良いです。
--- 補足(わかっていらしたら読む必要全くなし) --- ---
【下の図】↓ では、
『「back_mc」内の画像の下端は背景色と同化させておく』 と書いていますが、
これは、
1 そのサイトの方が具体的にイメージして考えて
2 サイトの方が考えた通りになるようにムービーを仕組んで
3 仕組みが狙い通りに動くようにASコーディングした
から、「そういう画像」を用意する必要があるのです。
そのサイトの方が "勝手に考えて" "勝手にそう工夫した" からそうなだけで、
これは決まりでも何でもありません。
背景画像入りMC 「back_mc」の幅はステージの幅にぴったりフィットさせています。
そしてそれに合わせて「back_mc」の高さを決めています↓。
// 「back_mc」をステージの "幅に合わせて" リサイズ
back_mc.width = sw;
back_mc.height = bh/bw*sw;
このスクリプトだと...、
つまり、
サイトの方が具体的にイメージして考えて考えた通りになるようにムービーを仕組んだものだと、
ブラウザを縦長にすると画像の下がどんどん見えてしまいます。
それで 『画像の下端は背景色と同化させておく』 ようなグラデーションにしておかなければ
背景画像の下に継ぎ目が見えてしまいます。
だから "そう仕組んだ" 画像を用意してあります。
もしくは、
どんなにブラウザを縦長にされても良いように、
超々縦長写真を用意しておいても良いかもしれません。
同じ事を逆から言えば、
// 「back_mc」をステージの "幅" に合わせてリサイズ
back_mc.width = sw;
back_mc.height = bh/bw*sw;
こういうスクリプトにしなければ、
『画像の下端は背景色と同化させておく』 とか
『超々縦長写真を用意しておく』 ようなことはしなくても良いわけです。
実際に 「どうしたいのか」 は作者以外わかりません。
「どうしたいのか」 を具体的に考えて、
そうなるような「仕組み」を作って
仕組みが狙い通り動作するように「ActionScriptをコーディング」して作ります。
実際に 「どうしたいのか」 は作者以外わかりませんが、
一例として書いておくと、
よく見かけるのは次のようにサイズ変更させるものです。
---上記スクリプトより---------------------------
// 「back_mc」をステージの "幅に合わせて" リサイズ
back_mc.width = sw;
back_mc.height = bh/bw*sw;
-------------------------------------------
↓この部分を変更↓
-------------------------------------------
// もし 「back_mc」 が ステージより縦長であれば
if(bh/bw > sh/sw){
// 「back_mc」をステージの "幅に合わせて" リサイズ
back_mc.width = sw;
back_mc.height = bh/bw*sw;
// そうでなければ
}else{
// 「back_mc」をステージの "高さに合わせて" リサイズ
back_mc.height = sh;
back_mc.width = bw/bh*sh;
}
-------------------------------------------
BlurFiltanさん
詳細な内容、ありがとうございました。非常に分かり易く、もれなく理解できました。またよろしくおねがいします。
No.1
- 回答日時:
お持ちの Flash のバージョンも ActionScript のバージョンも書かれていらっしゃいませんが......。
Adobe(Macromedia) Flash の場合は,
Flash MX 以降をお持ちであればできます。
ActionScript1.0 でも 2.0 でも 3.0 でも,
言語が違うだけでやることは一応同じですが,
回答はいちいち書いていられません。
「Flashでリキッドレイアウトを実装する (Liquid Flash Layout) - youmos」
http://youmos.com/news/liquid_flash_layout
↑ActionScript1.0(パブリッシュは2.0でもOK)
Flash MX 以上 Flash Player 6 以上
「feb19.jp blog - フルフラッシュサイト作り方入門」
http://feb19.jp/blog/archives/000056.php
↑ActionScript1.0(パブリッシュは2.0でもOK)
Flash MX 以上 Flash Player 6 以上
「Suzuka & ParaDraw 講座-フル画面Flash (Stageクラスの使い方)」
http://suzupara.iinaa.net/kiso411.html
↑ActionScript1.0( Adobe の場合 パブリッシュは2.0でもOK)
Adobe(Macromedia) の場合 Flash MX 以上 Flash Player 6 以上
「[AS3]フルブラウザ、リキッドレイアウト - Ao-Blog」
http://alwaysfinetuning.com/ao-blog/2009/01/as3- …
↑ActionScript3.0
Flash CS3 以上 Flash Player 9 以上
FlashゲームPG講座 For AS3.0【Stage クラスについて】
Flash の整列する位置を設定する
http://hakuhin.hp.infoseek.co.jp/main/as3/stage. …
↑ActionScript3.0
Flash CS3 以上 Flash Player 9 以上
サイトの紹介、ありがとうございました。
ちなみにflash CS3 AS3.0です。
多分基準点の理論を芯から理解出来てないのが原因かなぁと思ってるんですが。
とにかくご紹介いただいたサイト、一通り目を通してみようと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- HTML・CSS 検索窓とcssハックについて 3 2022/04/22 12:21
- Excel(エクセル) 【Excel:条件付き書式 データバー】 正負の軸の位置を変更する方法を教えてください 3 2023/01/08 19:41
- Outlook(アウトルック) アイホンで撮った写真を一枚だけPCに移し画像を縮小してWebメールに添付して送信する方法 1 2022/04/22 15:33
- その他(コンピューター・テクノロジー) PC利用中に勝手に起動する窓を消し去る方法を教えて下さい。 1 2023/05/08 16:48
- ホームページ作成・プログラミング グリッドレイアウトHTMLとCSS 1 2023/02/22 02:36
- Amazon Amazonの商品画像に詳しい方に質問があります。 1 2022/09/14 12:18
- 中古パソコン PCに入っている色々なアプリ等が起動しなくなりました 11 2023/06/16 16:20
- その他(Microsoft Office) 複数の写真を1枚に印刷 5 2023/05/05 22:41
- その他(動画サービス) VLCメディアプレーヤーについて 1 2022/11/29 14:19
- Word(ワード) Wordでの印刷サイズについて A4の原稿をB5サイズで出力したいとき、 印刷から用紙サイズの指定か 4 2022/04/30 09:51
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAユーザーホームテキストボッ...
-
flash ブラウザのサイズに合わ...
-
テキストファイルから読み込ん...
-
photoshopで書いた四角の枠の中...
-
【VB.NET】別Formのボタンが押...
-
OpenGLのグラデーションについて
-
python ボタンを押すと複数の関...
-
指定したURLを開くアクショ...
-
'2465'指定した式で参照してい...
-
【ExcelVBA】ファイル名をセル...
-
C# chart controlの透過について
-
テキストボックスにセルの値を...
-
DelphiのRichEditでカーソル位...
-
四乗根を英語で言うと・・・
-
テキストボックスの中身をリセ...
-
テキストエリア内の文字列にリ...
-
マウス自体の移動量の取得
-
VBScriptでMsgBoxのYesNoボック...
-
別のアプリケーションのテキス...
-
シンボルをコピーしたい (Flash...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAで改行の入ったデータの正規...
-
テキストファイルから読み込ん...
-
VBAユーザーホームテキストボッ...
-
縦横比率のを変えずに画像のサ...
-
外部SWFファイルを再生バーでコ...
-
ラッコって?
-
複数ボタンの生成 - actionscript
-
ActonScriptでムービークリップ...
-
コンプトン散乱について
-
addChildで描画した絵(シンボル...
-
upc 7915と mc7915ctは互換性有...
-
ActionScript3のMovieClipについて
-
AS3 mc0~5をまとめて処理する
-
AS3.0 設置した画像を次のラベ...
-
2つの取り込んだ画像を交差さ...
-
flash as3 ムービークリップの...
-
Flashで外部jpgファイルをmcに...
-
3つのムービークリップ再生・巻...
-
日本ヒューレット・パッカード...
-
四角形の端っこをドラッグした...
おすすめ情報