【AS3】FlashDevelop【フリー】 (601レス)
上下前次1-新
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
146(1): 2009/08/14(金)01:11 ID:w4LLHFJe(1/5) AAS
もう解決したが、謎仕様にハメられた・・・
例)
[SWF (width=800, height=600, backgroundColor=0xffffff, frameRate=20)]
public class Main extends Sprite
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void {
// ここで stage.stageWidth と stage.stageHeight
// を取った時・・・ ローカルで直接swfを叩くと 設定値がちゃんと取れる
// しかし WebServer上に上げて 外部リンク[swf]:hogehoge のようにして実行するとなんと 0 が返る
// 挙動が変わるとはこれいかに
}
}
147: 2009/08/14(金)01:14 ID:w4LLHFJe(2/5) AAS
>>146 の解決策
例)
[SWF (width=800, height=600, backgroundColor=0xffffff, frameRate=20)]
public class Main extends Sprite {
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void {
removeEventListener(Event.ADDED_TO_STAGE, init);
addEventListener(Event.ENTER_FRAME, ent);
}
private function ent(e:Event = null):void {
removeEventListener(Event.ENTER_FRAME, ent);
// EnterFrameを一段カマせば、ブラウザ越しでもローカル実行でも取れる
// ※サイズはその時のステージのサイズ
}
}
148: 2009/08/14(金)01:17 ID:w4LLHFJe(3/5) AAS
ちなみに、謎仕様と言うか動きから察するに、win32で言う所の、
WM_PAINT が実行されたタイミングでサイズ決定してるんだろうなぁという感想
stage.stageWidth と stage.width の違いも知らないと多分間違うし、結構罠が多い…
無駄に時間食ってしまった
150(1): 2009/08/14(金)21:08 ID:w4LLHFJe(4/5) AAS
あとこういう謎仕様と言うか、Flashの中の動きを想像して予想しないと
一見何でも無いような事すら書けないってのはちょっと苦痛な気もする・・・ 理由わかる?
例1)
var w:int = 200;
var h:int = 50;
var sp:Sprite = addChild(new Sprite()) as Sprite;
sp.graphics.beginGradientFill(GradientType.LINEAR, [0xffffff, 0x000000], [1.0, 1.0], [200, 255]);
sp.graphics.drawRoundRect(0, 0, w, h, 8, 8);
sp.graphics.endFill();
例2)
〜例1と同じ前略〜
var sp:Sprite = addChild(new Sprite()) as Sprite;
sp.width = w;
sp.height = h;
〜例1と同じ後略〜
空の Sprite の width/height を設定するかしないかで描画の内容が変わるって一体・・・
151: 2009/08/14(金)21:15 ID:w4LLHFJe(5/5) AAS
あ、ちなみに誤解の無いように言っておくと、不満色々書いてても
俺根本的にFlash好きだからなww ブツブツ文句言いながら追いかけて楽しんでる
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.025s