获取加载到 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);
我正在我的电脑上测试代码。从本地文件夹加载图像并尝试获取单击按钮后加载的图像的高度。代码类似于第 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);