addChild()从外部.as文件暂存

时间:2011-01-21 01:39:42

标签: actionscript-3

当我将一个对象从库中添加到时间轴中的阶段时(通过将脚本放在时间轴中)它可以正常工作但是当我尝试从这个.as文件添加它时没有任何反应。

package com.wld.utils {
    import flash.display.MovieClip;

    public class ISGallery extends MovieClip {
        var imageArray:Array = new Array();

        public function ISGallery() {

        }

        public function addImageURL(imageURL:String):void {
            imageArray.push(imageURL);
            var gallerythumb:ISGalleryThumb = new ISGalleryThumb();
            addChild(gallerythumb); // nothing happens
        }
    }
}

感谢。

1 个答案:

答案 0 :(得分:1)

首先,您要添加对象的函数只是一个函数;

public function test()
{
//addcode here
}

然后goo回到你的主类,并导入“com.wld.utils.ISGallery”

package
{

    import com.wld.utils.ISGallery;

现在您在主代码中使用外部coode的主类创建一个var。

var myExternalClass:ISGallery = new ISGallery();

最后你必须调用添加对象的函数, 然后添加新类。

addChild(myExternalClass);    
myExternalClass.hello();

现在是一个例子。

soo这里是主代码的样子:

package
{
    import flash.display.*;
    import flash.text.*;
    import flash.events.*;
    import flash.ui.*;
    import flash.utils.*;
    import flash.media.*;
    import com.wld.utils.ISGallery;
    public class Test extends MovieClip
    {
        public function Test()
        {
            var myExternalClass:ISGallery = new ISGallery();

            addChild(myExternalClass);
            myExternalClass.hello();
        }
    }
}

现在是外部课程:

(注意:extends sprite也可以是movieclip)

package com.wld.utils
{
    import flash.display.*;
    import flash.text.*;
    import flash.events.*;
    import flash.ui.*;
    import flash.utils.*;
    import flash.media.*;
    public class ISGallery extends Sprite
    {
    var myFirstText:TextField = new TextField();
    var mySecondText:TextField = new TextField();
        public function ISGallery()
        {
        }
        public function hello()
        {
            myFirstText.text = "test";
            mySecondText.y = 40;
            mySecondText.text = "hello";
            addChild(myFirstText);
            addChild(mySecondText);
        }
    }
}

最终产品应该是这样的。

输出应该有一个文字说“test”

另一个约1/4向下,说“你好”。