[转]一个拷贝显示对象的静态类, 望有用

本文介绍了一个名为DisplayObjectUtil的工具类,用于在Flash环境中复制DisplayObject并克隆其属性,包括transform、filters、cacheAsBitmap、opaqueBackground以及scale9Grid。同时提供了一个实例演示如何自动将复制的对象添加为目标对象的兄弟。
摘要由CSDN通过智能技术生成

  1. package
  2. {
  3.         import flash.display.DisplayObject;
  4.         import flash.display.Sprite;
  5.         import flash.geom.Rectangle;

  6.         public class DisplayObjectUtil
  7.         {
  8.                 
  9.                 // Duplicate显示对象
  10.                 public static function duplicateDisplayObject( target:DisplayObject, auto_add:Boolean = false ):DisplayObject{
  11.                         var cls:Class = Object(target).constructor;
  12.                         var tmp:Sprite = new cls();
  13.                         
  14.                         // 克隆属性
  15.                         tmp.transform = target.transform;
  16.                         tmp.filters = target.filters;
  17.                         tmp.cacheAsBitmap = target.cacheAsBitmap;
  18.                         tmp.opaqueBackground = target.opaqueBackground;
  19.                         if ( target.scale9Grid ) {
  20.                                 var rect:Rectangle = target.scale9Grid;
  21.                                 tmp.scale9Grid = rect;
  22.                         }
  23.                         
  24.                         // 自动加为target的兄弟
  25.                         if ( auto_add && target.parent ) {
  26.                                 target.parent.addChild( tmp );
  27.                         }
  28.                         return tmp;
  29.                 }

  30.                 
  31.         }
  32. }
复制代码
  DisplayObjectUtil.rar (539 Bytes)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值