Flash / ActionScript プログラムに関する各種メモ書き

常に背景を画面にフィットするようウィンドウサイズ変更時に自動で画像をリサイズする

Flashでのリキッドデザインとでも言うのでしょうか、

常に背景を画面にフィットするようウィンドウサイズ変更時に自動で画像をリサイズするサンプルは以下のとおりです。

背景画像(my_mc)を画面にフィットするようにするサンプル

//自動でサイズを変更しない。
Stage.scaleMode = "noScale";
//基準点をLeftTop
Stage.align = "LT";
//イベントリスナーに登録。
sListener = new Object();
var _this = this;
sListener.onResize = function() {
    // 例:my_mc のサイズを変更する
    var rt_array = calc_stage_match_width_height(my_mc._width, my_mc._height);
    my_mc._width  = rt_array[0];
    my_mc._height = rt_array[1];
};
Stage.addListener(sListener);

// ウィンドウにマッチするサイズを返す
function calc_stage_match_width_height(width, height){
    var rt_array = new Array();
    var rt_width  = Stage.width;
    var rt_height = (Stage.width/width)*height;
    if (rt_height < Stage.height){
        rt_height  = Stage.height;
        rt_width = (Stage.height/height)*width;
    }
    rt_array[0] = rt_width;
    rt_array[1] = rt_height;
    return rt_array;
}

// 最初にリサイズする
var rt_array = calc_stage_match_width_height(my_mc._width, my_mc._height);
my_mc._width  = rt_array[0];
my_mc._height = rt_array[1];

サンプルの .fla ファイルは↓からダウンロード


関連エントリー

添付ファイル1
No.815
08/23 20:00

edit

添付ファイル

画像
ActionScript2.0