flex 百叶窗效果
Blinds.as
package effects
{
import effects.effectClasses.BlindsInstance;
import mx.controls.scrollClasses.ScrollBarDirection;
import mx.effects.IEffectInstance;
import mx.effects.TweenEffect;
public class Blinds extends TweenEffect
{
private static var AFFECTED_PROPERTIES:Array = ["mask"];
public function Blinds(target:Object=null)
{
super(target);
instanceClass = BlindsInstance;
}
public var direction:String = ScrollBarDirection.VERTICAL;
public var blindsfrom:Number;
public var blindsTo:Number;
public var gapfrom:Number;
public var gapTo:Number;
override public function getAffectedProperties():Array
{
return AFFECTED_PROPERTIES;
}
override protected function initInstance(instance:IEffectInstance):void
{
super.initInstance(instance);
var blindsInstance:BlindsInstance = BlindsInstance(instance);
blindsInstance.direction = direction;
blindsInstance.blindsfrom = blindsfrom;
blindsInstance.blindsTo = blindsTo;
blindsInstance.gapfrom = gapfrom;
blindsInstance.gapTo = gapTo;
}
}
}
BlindsInstance.as
package effects.effectClasses
{
import flash.display.DisplayObject;
import flash.display.Sprite;
import mx.controls.scrollClasses.ScrollBarDirection;
import mx.effects.effectClasses.TweenEffectInstance;
public class BlindsInstance extends TweenEffectInstance
{
public function BlindsInstance(target:Object)
{
super(target);
}
public var direction:String = ScrollBarDirection.VERTICAL;
public var blindsfrom:Number;
相关文档:
<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate the DateTimeAxis class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>
import mx.collections.ArrayCollection;
......
采用Image重复加载图片极大影响性能,并且占用大量内存,下面是我对比验证的代码。
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
initialize="loadImage()">
<m ......
1.在<Object>和<embed>中设置flashVars参数,例如:
<object id=’mySwf’ classid=’clsid:D27CDB6E-AE6D-11cf-96B8-444553540000′ codebase=’http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab’ height=’100%’ width=’100%&rs ......
1、自定义组件
2、自定义事件
3、结合使用
一、自定义组件(使用的是Flex组件,ActionScript组件相对麻烦点,可视化差点)
该组件由一个TextArea和两个Button组成,如图:
代码:
MyComponent.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width=" ......