zoukankan      html  css  js  c++  java
  • as3自定义加载图片类

    ImageLoader.as类:
    package
    {
        import flash.display.Bitmap;
        import flash.display.Loader;
        import flash.display.Sprite;
        import flash.events.Event;
        import flash.events.ProgressEvent;
        import flash.net.URLRequest;
        
    /**
         * 图片加载类
         * @author sange
         
    */
        public class ImageLoader extends Sprite
        {
            private 
    var loader:Loader;        
            private 
    var sw:Number;
            private 
    var sh:Number;
            
            
    /**
             * 构造函数
             * @param    w  图片width
             * @param    h  图片height
             * @param    url  图片地址
             
    */
            public 
    function ImageLoader(w:Number,h:Number,url:String) 
            {            
                
    this.sw = w;
                
    this.sh = h;
                loader 
    = new Loader();            
                loader.load(
    new URLRequest(url));
                loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, loaderProgressHandler);
                loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderCompleteHandler);
            }        
            
            
    /**
             * 加载进度 监听器
             * @param    e
             
    */
            private 
    function loaderProgressHandler(e:ProgressEvent):void
            {
                
    var num:uint = (e.bytesLoaded / e.bytesTotal) * 100;
                trace(num
    +"%");
            }
            
            
    /**
             * 加载完成 监听器
             * @param    e
             
    */
            private 
    function loaderCompleteHandler(e:Event):void
            {
                
    var bitmap:Bitmap = e.currentTarget.content as Bitmap;
                trace(bitmap);    
                bitmap.width 
    = this.sw;
                bitmap.height 
    = this.sh;        
                bitmap.x 
    = 0;
                bitmap.y 
    = 0;
                addChild(bitmap);
            }
        }
    }

    以下二种调用

    flex的as工程主类:SImageLoader.as

    package {
        import flash.display.Sprite;

        public class SImageLoader extends Sprite
        {
            [SWF(width
    ="800",height="600",frameRate="25")]
            public 
    function SImageLoader()
            {
                
    var img:ImageLoader = new ImageLoader(100,100,"q2.jpg");
                addChild(img);
            }
        }
    }

    还有flash帧上调用代码:

    var image:ImageLoader = new ImageLoader(100,100,"q2.jpg");
    this.addChild(image);
  • 相关阅读:
    Spring框架——JdbcTemplate(Spring对Jdbc的封装)
    Spring框架——批处理(batch)和事务(Transaction)
    Spring框架——AOP(面向切面编程)详解
    Spring框架——关于IOC容器和注解的36个小实验
    学习新技术的 10 个建议
    解决 PHP Fatal error: Call-time pass-by-reference has been removed
    mysql下float类型使用一些误差详解
    windows 如何查看端口占用情况
    插件机制
    .net/c#常用框架/中间件简介
  • 原文地址:https://www.cnblogs.com/sange/p/1647979.html
Copyright © 2011-2022 走看看