动作检索宽度/高度装载机形象 [英] ActionScript Retrieving Width/Height Of Loader Image

查看:118
本文介绍了动作检索宽度/高度装载机形象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图访​​问经由定制的LoadImage类添加到舞台的图像的宽度和高度。跟踪结果是0,即使图像显示正常。这是什么问题?

  //框架脚本

VAR图像:的LoadImage =新的LoadImage(myImage.jpeg);
的addChild(图像);
跟踪(image.width); //返回0

// -------------------------

包
{
进口flash.display.Sprite;
进口flash.display.Loader;
进口flash.net.URLRequest;
进口对象类型:flash.events.Event;

公共类的LoadImage扩展Sprite
    {
    公共职能的LoadImage(IMAGEURL:字符串)
        {
        //加载图像
        VAR ImageLoader的:装载机=新的Loader();
        imageLoader.contentLoaderInfo.addEventListener(引发Event.COMPLETE,imageHandler);
        imageLoader.load(新的URLRequest(IMAGEURL));
        }

    私有函数imageHandler(EVT:事件):无效
        {
        的addChild(evt.target.content);
        }
    }
}
 

解决方案

如果你试图实例化后立即访问它,你没有访问它的属性。你将不得不使其事件驱动的:

 类的LoadImage加载图像
 框架脚本监听来自的LoadImage一个完整的事件
 的LoadImage加载图像,一旦它有它的手就可以了将分派事件
 框架脚本在数据
 

您需要做一个事件的LoadImage,一次在imageHandler完成,发货。当你让你的新的LoadImage,建立了监听器

  VAR形象:的LoadImage =新的LoadImage(myImage.jpeg);
image.addEventListener(完全,loadedImage); //或者无论你怎么称呼事件

功能loadedImage(EVT:事件){
   的addChild(evt.target);
   跟踪(evt.target.content.width); //返回0
}
 

i'm trying to access the width and height of an image that is added to the stage via a custom LoadImage class. the trace results are 0 even though the image displays correctly. what is the problem?

//frame script

var image:LoadImage = new LoadImage("myImage.jpeg");
addChild(image);
trace(image.width);  //returns 0

//-------------------------

package
{
import flash.display.Sprite;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;

public class LoadImage extends Sprite
    {
    public function LoadImage(imageURL:String)
        {
        //Load Image
        var imageLoader:Loader = new Loader();
        imageLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, imageHandler);
        imageLoader.load(new URLRequest(imageURL));
        }

    private function imageHandler(evt:Event):void
        {
        addChild(evt.target.content);
        }
    }
}

解决方案

If you're trying to access it right after you instantiate it, you don't have access to it's properties. You will have to make it event driven:

 class LoadImage loads image
 frame script listens for a complete event from LoadImage 
 LoadImage loads the image, once it has it's hands on it it dispatches the event
 frame script works with the data 

you need to make an event in LoadImage and once done in imageHandler, dispatch that. When you make your new LoadImage, set up the listener

var image:LoadImage = new LoadImage("myImage.jpeg");
image.addEventListener("complete", loadedImage); //or whatever you call the event

function loadedImage(evt:Event) {
   addChild( evt.target );
   trace(evt.target.content.width);  //returns 0
}

这篇关于动作检索宽度/高度装载机形象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆