In case Flash no longer exists; a copy of this site is included in the Flashpoint archive's "ultimate" collection.

Dead Code Preservation :: Archived AS3 works from wonderfl.net

sample text display

Copyright asfgu ( http://wonderfl.net/user/asfgu )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/1wWa

実行結果を見ればわかるが,画面には"Hello World"が2回描画されている。
コアクラスには描画の指定がない、そしてサブクラスには一回しか描画がしていされていない。
一回描画していすれば、コアクラスで呼び出せば何回でも描画できる。
ただし、基本的には描画はサブクラスまかせなので、描画の設定を変えたい場合は
フォント、色などの引数を渡す設定が必要である。

(注)これはサブクラスを使用する事を前提としているため、普通は関数化で充分

ちなみにdrawを使った応用もこちらに
sample draw display = http://wonderfl.net/c/u7F6
Get Adobe Flash player
by asfgu 06 Nov 2010
/**
 * Copyright asfgu ( http://wonderfl.net/user/asfgu )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/aWXL
 */

// forked from jl7kii's forked from: flash on 2010-5-18
// forked from asfgu's flash on 2010-5-18
/**
 * Copyright asfgu ( http://wonderfl.net/user/asfgu )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/1wWa
 */
 
 /*
 実行結果を見ればわかるが,画面には"Hello World"が2回描画されている。
 コアクラスには描画の指定がない、そしてサブクラスには一回しか描画がしていされていない。
 一回描画していすれば、コアクラスで呼び出せば何回でも描画できる。
 ただし、基本的には描画はサブクラスまかせなので、描画の設定を変えたい場合は
 フォント、色などの引数を渡す設定が必要である。
 
 (注)これはサブクラスを使用する事を前提としているため、普通は関数化で充分
 
 ちなみにdrawを使った応用もこちらに
 sample draw display = http://wonderfl.net/c/u7F6
 */
package {
    import flash.display.*;
    
    [SWF(width="500", height="500", backgroundColor="0xffffff", frameRate="30")]
    
    //サブクラスを読み込むコアクラス
    public class Main extends Sprite{
        private var s1:Shikaku, s2:Shikaku, s3:Shitei;//変数はサブクラスの属性であること
        public function Main() {
            //変数の登録
            s1 = new Shikaku();
            s2 = new Shikaku();
            s3 = new Shitei("Hello World",24,0xFF0000,true);
            s2.x = 100;//2番目のx位置
            s2.y = 100;//2番目のy位置
            s3.y = 200;//3番目のy位置
            //描画開始
            stage.addChild(s1);
            stage.addChild(s2);
            stage.addChild(s3);
        }
    }
}
//サブクラスでも必要に応じてimport
import flash.display.*;
import flash.text.*;

//テキスト描画用のサブクラス

//引数を渡さない場合
class Shikaku extends Sprite{
    private var tf:TextField;
    public function Shikaku():void{
        tf = new TextField();//テキストフィールド生成
        tf.defaultTextFormat = new TextFormat("", 20, 0, false)
        tf.text = "jiki";//テキストの内容
        tf.autoSize = TextFieldAutoSize.LEFT;
        addChild(tf);//テキストの描画
    }
}
//引数を渡した場合
class Shitei extends Sprite{
    private var tf:TextField;
    //メソッドで引数の数とその属性を指定しておく
    public function Shitei(text:String, size:int, color:uint, bold:Boolean){
        tf = new TextField();//テキストフィールド生成
        tf.defaultTextFormat = new TextFormat("", size, color, bold)//引数の値を適用する
        tf.text = text;//テキストの内容
        tf.autoSize = TextFieldAutoSize.LEFT;
        addChild(tf);//テキストの描画
    }
}