2016-04-07 6 views
0

関数メソッドにスプライトを送信しようとしています。Flash AS3スプライトの幅が関数で正しく送信されない

しかし、私はスプライトの幅、高さを得ることができませんでした。なぜこれが問題になるのか分かりません。

私にこれに関するアドバイスをいただけますか?

function mouseClick(evt:MouseEvent) { // click event 
    var s:Sprite = new Sprite(); 
    s.width = 595; 
    s.height = 842; 
    s.x = s.y = 0; 
    addChild(s); 
    dothis(s); 
} 

function dothis(s:Sprite){ 
    trace("s.width : "+s.width + "/s.height : "+s.height); 
    // s.width and s.height returns 0 value always.. 
} 

ご覧のとおり、スプライトの幅と高さの結果は常に0です。

なぜこれが私に起こりますか?

+0

おそらく複製http://stackoverflow.com/questions/5134347/as3-setting-width-and-height-of-a-sprite-container –

答えて

1

Spriteには何も含まれていないので(後で仮定します)、幅/高さは常にゼロになります。

スプライト - >のDisplayObjectContainer - >のInteractiveObject - > DisplayObject->のEventDispatcher - >オブジェクト

あなたが続く場合は、Spriteオブジェクトの継承、幅/高さがDisplayObjectクラスに、そのクラスのノートごとに公開されます。

TextFieldオブジェクトとVideoオブジェクト以外のコンテンツ(空のスプライトなど)の表示オブジェクトの幅は、幅を別の値に設定しようとしても0です。

+0

ありがとうございました。しかし、私はmovieclip(空ではない)をaddChildを使ってスプライトに追加しようとしています。私はスプライトの幅/高さの値をチェックしますが、結果も同様です。 :( – Richard

関連する問題