web-dev-qa-db-ja.com

AS3でステージの背景色を変更しますか?

純粋なAS3を使用してプロジェクトをビルドしています。 AS3でステージの背景色を変更する方法はないかと思っていました...助けてくれてありがとう...

15
FlyingCat

このような:

[SWF(backgroundColor="0xec9900")]
public class Main extends Sprite
{
    }
23
PatrickS

私はこれをcreationCompleteハンドラーに持っています

<s:Application xmlns:fx="http://ns.Adobe.com/mxml/2009"
               xmlns:s="library://ns.Adobe.com/flex/spark"
               xmlns:mx="library://ns.Adobe.com/flex/mx"
               creationComplete="on_init();">

private function on_init():void {
    stage.color = 0x000000;
}

どこでも使える気がしますが。

10
Peter Gibson

これにより、シェイプが作成され、すべての背後にあるステージに追加されます。いつでも色を変更するには:changeBGColor(0xFF0000)(赤に)

また、ウィンドウのサイズが変更されても、(すべての領域をカバーする)背景のサイズを維持します。

import flash.display.Sprite;
import flash.events.Event;

var default_bg_color:uint = 0xffffff;

var bgshape:Sprite;
stage.align = "TL";
stage.scaleMode = "noScale";

function initBG()
{
    bgshape = new Sprite();
    bgshape.graphics.beginFill(default_bg_color);
    bgshape.graphics.drawRect(0,0,stage.stageWidth, stage.stageHeight);
    addChildAt(bgshape, 0);
    stage.addEventListener(Event.RESIZE, resizeBGWithStage);
}
function changeBGColor(color:uint) 
{
    bgshape.graphics.beginFill(color);
    bgshape.graphics.drawRect(0,0,stage.stageWidth, stage.stageHeight);
}
function resizeBGWithStage(e:Event)
{
    try {
        bgshape.width = stage.stageWidth;
        bgshape.height = stage.stageHeight;
    } catch(e){}
}

initBG();
9
Makram Saleh

ActionScript 3.0の次の行を使用して背景色を設定できるはずです。黒の場合は0x000000、白の場合は0xFFFFFF、およびその間のすべて。

this.stage.color = 0x00000;

5
Ian Grayden

@Wopdoowopが述べたように、初期化時に背景色を設定できますが、動的に変更する場合は、背景として機能する独自のビットマップ/スプライト/ムービークリップを作成する必要があります(コンテンツの残りの部分の下に配置する必要があります。ステージの幅と高さを設定し、そのビットマップ/スプライト/ムービークリップの色を変更します。

4
Maksim Vi.
[SWF(width='700',height='525',backgroundColor='#000000',frameRate='30')]
public class RunTime extends Sprite {
1

スプライトを作って、後ろで作ることをお勧めします。これは私がそれをする方法です。

必ずimport flash.display.Sprite;

var bkg:Sprite=new Sprite();
//replace the 0x000000 with a hex code.
bkg.graphics.beginFill(0x000000, 1)
bkg.graphics.drawRect(0,0,stage.stageWidth,stage.stageHeight)
bkg.graphics.endFill()
addChild(bkg)

これの利点は、手動またはコードを使用して(必要に応じて)背景を描画し、それをコードに挿入できることです。

0
Zane Clark

アプリケーションオブジェクトの背景色を設定してみてください。

0
Robusto