获取加载到 Flash AS2 中的图像的高度

getting the height of image loaded in Flash AS2

我正在我的电脑上测试代码。从本地文件夹加载图像并尝试获取单击按钮后加载的图像的高度。代码类似于第 1

jpgHolder.loadMovie("image"+i+".jpg");

点击后变量i加1

在第 2 帧中,我想通过

追踪图像的高度
trace(jpgHolder._height);

第一次点击后,我的输出结果为 0。第二次点击后,我得到了上一张图片的高度,依此类推。为什么我加载的是上一张图片的高度,我该如何解决?

因为 trace 在 加载完成之前 被调用。

为了trace正确的高度,为了正确的图片,您需要检查它是否加载完成。

您可以像在 onEnterFrame 循环中那样做,但在 AS2 中实现此目的的最佳方法是使用 MovieClipLoader class 和一个侦听器对象:

// create the loader
var loader : MovieClipLoader = new MovieClipLoader();

// create a listener object: an object that holds event callbacks
var listener : Object = {};

// assign the "onLoadInit" to the listener. this will be called when loading completes
listener.onLoadInit = function(mc :     MovieClip, status : Number) : Void {
    trace("height:" + mc._height);
};

// load the file into the container "jpgHolder"
loader.loadClip("image" + i + "test.jpg", jpgHolder);