0

関数 X1 は単純に実行されません。トレース結果はなく、プログラムは非常に基本的です。
Board.as と呼ばれる - チェックしました。
単純なスプライト表示が機能しない。

Main.as

package 
{
    import flash.display.Bitmap;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.*;
    import flash.text.TextField;
    import flash.ui.Keyboard;
    import Start;
    import Board;
    /**
     * ...
     * @author Michael
     */

    public class Main extends Sprite 
    {

        public function Main():void 
        {
            if (stage) init();
            else addEventListener(Event.ADDED_TO_STAGE, init);
        }

        private function init():void 
        {
            removeEventListener(Event.ADDED_TO_STAGE, init);

            var Board1:Sprite = new Board();   
            stage.addChild(Board1);


            Board1.visible = true;

            var Start1:Sprite = new Start();
            Start1.x = 32;
            Start1.y = 32;
            addChild (Start1);
            stage.addEventListener(KeyboardEvent.KEY_DOWN, myKeyDown);
            function myKeyDown(e:KeyboardEvent):void{
            if (e.keyCode ==Keyboard.SPACE) 
            {
            removeChild(Start1);
            Start1 = null;  
            }


            } 
}

Board.as

package 
{
    import flash.display.Bitmap;
    import flash.display.Graphics;
    import flash.display.Sprite;


    /**
     * ...
     * @author Michael
     */
    public class Board extends Sprite
    {
    [Embed(source="../lib/Board.jpg")]
    private var BoardClass :Class

    public function X1():void  
    {
        var boardclass:Bitmap = new BoardClass () as Bitmap;
    trace("Project is running fine!");
        this.addChild(boardclass);

    }
    }



}
4

1 に答える 1

1

関数 X1() を呼び出していません。ボードを作成する Main.as クラスのコード部分を次のように変更します。

var Board1:Sprite = new Board(); 
Board1.X1();
stage.addChild(Board1);

コードに関するその他のヒント:

1)必要ありません Board1.visible = true;。デフォルトで表示されます

2) Board1 の名前を board1 または単に board に変更します。頭文字を大文字にしてクラスを呼ぶのが標準です。

編集:

オブジェクトの作成時に X1() を実行する場合は、Board.as のコンストラクターでこの関数を呼び出します。コンストラクターは、オブジェクトを作成するときに実行される関数です。Board.as の場合は次のようになります。

public function Board():void
{

   X1(); // this function will be called when you create a new Board object
}
于 2013-09-03T00:58:35.467 に答える