Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Image 图片一直放在左上方。(动作脚本3)_Image_Actionscript 3 - Fatal编程技术网

Image 图片一直放在左上方。(动作脚本3)

Image 图片一直放在左上方。(动作脚本3),image,actionscript-3,Image,Actionscript 3,所以我的计划是制作两个图库页面。我称它们为“gallery1”和“gallery2”。画廊页面上每个页面都有5个类似按钮的缩略图,所以当你点击它们时,它会打开一个swf的图片。现在问题是,它总是在左上角打开,我希望它们在页面的中间。这是gallery1的代码。画廊2是相同的,但有不同的图片。b1-b5是缩略图。请帮忙 var swfRequest1:URLRequest = new URLRequest("image1.swf"); var swfRequest2:URLRequest

所以我的计划是制作两个图库页面。我称它们为“gallery1”和“gallery2”。画廊页面上每个页面都有5个类似按钮的缩略图,所以当你点击它们时,它会打开一个swf的图片。现在问题是,它总是在左上角打开,我希望它们在页面的中间。这是gallery1的代码。画廊2是相同的,但有不同的图片。b1-b5是缩略图。请帮忙

var swfRequest1:URLRequest = new URLRequest("image1.swf");
    var swfRequest2:URLRequest = new URLRequest("image2.swf");
    var swfRequest3:URLRequest = new URLRequest("image3.swf");
    var swfRequest4:URLRequest = new URLRequest("image4.swf");
    var swfRequest5:URLRequest = new URLRequest("image5.swf");

    var swfLoader:Loader = new Loader();



function opengal(evt:MouseEvent):void





{   
        var pTarget:String = evt.currentTarget.name;

    if(pTarget == "b1")
    {
        swfLoader.load(swfRequest1);
        addChild(swfLoader);
    }
    else if(pTarget == "b2")
    {
        swfLoader.load(swfRequest2);
        addChild(swfLoader);
    }
    else if(pTarget == "b3")
    {
        swfLoader.load(swfRequest3);
        addChild(swfLoader);
    }
    else if (pTarget == "b4")
    {
        swfLoader.load(swfRequest4);
        addChild(swfLoader);
    }
    else if(pTarget == "b5")
    {
        swfLoader.load(swfRequest5);
        addChild(swfLoader);
    }
};


b1.addEventListener(MouseEvent.CLICK, opengal);
b2.addEventListener(MouseEvent.CLICK, opengal);
b3.addEventListener(MouseEvent.CLICK, opengal);
b4.addEventListener(MouseEvent.CLICK, opengal);
b5.addEventListener(MouseEvent.CLICK, opengal);

你必须在屏幕中间放置你的代码> SWOLADADER < /代码>。< /P> 您可以使用以下代码执行此操作:

swfLoader.x = (swfLoader.width - stage.stageWidth)/2; // and the y axis in a  similar way

当CopyLoad信息发布事件时,可以检索所需的宽度和高度属性。init .< /p> 在您的阶段中间设置加载的内容,您可以这样做:

// store files path into an array
var files:Array = ['image01.swf', 'image02.swf', 'image03.swf', 'image04.swf', 'image05.swf'];

var loader:Loader = new Loader();
    // use loader.contentLoaderInfo to listen to Event.INIT
    loader.contentLoaderInfo.addEventListener(
        Event.INIT, function(e:Event):void {
            // center our loader
            loader.x = (stage.stageWidth - loader.width)/2;
            loader.y = (stage.stageHeight - loader.height)/2;           
        })
    addChild(loader);                     

function opengal(evt:MouseEvent):void {
    // here the pTarget should be between 0 and 4 as an array index
    var pTarget:int = Number((evt.currentTarget.name).substr(-1, 1)) - 1;
    loader.load(new URLRequest(files[pTarget]));

};

...

我希望这能对你有所帮助。

嗯,我该怎么做?