我知道你可以使用.width或。高度属性,但这似乎很草率。我需要改变这个:
function packetF(): void {
Time.removeEventListener(TimerEvent.TIMER, checkF);
Image = Data.image[imageNum].imgURL;
Childnumber = Data.*.length();
imgW = Data.image[imageNum].imgW;
imgH = Data.image[imageNum].imhH;
imageLoad = new Loader;
imageLoad.load(new URLRequest(Image));
imagebox.addChild(imageLoad);
imageLoad.x=(imagebox.width - Number(imgW))/2;
imageLoad.y=(imagebox.height - Number(imgH))/2;
}
我还没有特定的身高/宽度。我只需要知道如何做到这一点
答案 0 :(得分:0)
加载文件(本例中的图像)是一个异步过程。在图像加载之前,您无法更改宽度和高度:
import flash.events.Event;
function packetF(): void
{
Time.removeEventListener(TimerEvent.TIMER, checkF);
Image = Data.image[imageNum].imgURL;
Childnumber = Data.*.length();
imgW = Data.image[imageNum].imgW;
imgH = Data.image[imageNum].imhH;
imageLoad = new Loader();
// listen for Event.COMPLETE on the loader:
imageLoad.contentLoaderInfo.addEventListener(Event.COMPLETE, onImageLoaded);
imageLoad.load(new URLRequest(Image));
imagebox.addChild(imageLoad);
imageLoad.x=(imagebox.width - Number(imgW))/2;
imageLoad.y=(imagebox.height - Number(imgH))/2;
}
function onImageLoaded(e:Event):void
{
imageLoad.width = imgW;
imageLoad.height = imgH;
}