flex实现窗口关闭时放大和缩小的效果 Zoom
发布时间:2020-12-15 04:59:13 所属栏目:百科 来源:网络整理
导读:zoom类:?xml version="1.0" encoding="utf-8"?mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml"width="416" showCloseButton="true" creationComplete="onCreate()"height="304" close="on_win_close()"mx:Script![CDATA[import mx.managers.PopU
zoom类: <?xml version="1.0" encoding="utf-8"?> <mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" width="416" showCloseButton="true" creationComplete="onCreate()" height="304" close="on_win_close()"> <mx:Script> <![CDATA[ import mx.managers.PopUpManager; import mx.events.EffectEvent; import mx.rpc.events.ResultEvent; [Bindable] private var timer:Timer; private function onCreate():void { this.alpha = 0.1; timer = new Timer(10); timer.addEventListener(TimerEvent.TIMER,on_create_timer_start); timer.start(); create_zoom_smal.play(); create_zoom_smal.addEventListener(EffectEvent.EFFECT_END,on_create_zoom_smal_end); } private function on_create_zoom_smal_end(event:EffectEvent):void { create_zoom_smal.removeEventListener(EffectEvent.EFFECT_END,on_create_zoom_smal_end); create_zoom_big.play(); this.alpha = 1.0; timer.stop(); } //创建时timer启动监听 private function on_create_timer_start(event:TimerEvent):void { if(this.alpha<1) { this.alpha +=0.1; } else { timer.stop(); } } //处理窗口关闭事件 private function on_win_close():void { timer = new Timer(40); timer.addEventListener(TimerEvent.TIMER,on_close_timer_start); timer.start(); close_zoom_big.play(); close_zoom_big.addEventListener(EffectEvent.EFFECT_END,close_zoom_big_end); } private function close_zoom_big_end(event:EffectEvent):void { close_zoom_big.removeEventListener(EffectEvent.EFFECT_END,close_zoom_big_end); close_zoom_small.play(); if(this.alpha<=0) { PopUpManager.removePopUp(this); timer.stop(); } } private function on_close_timer_start(event:TimerEvent):void { this.alpha -=0.1; } ]]> </mx:Script> <!-- 关闭效果--> <!-- 关闭缩小--> <mx:Zoom id="close_zoom_small" zoomHeightTo="0.98" target="{this}" zoomWidthTo="0.98" duration="75"/> <!-- 关闭放大 --> <mx:Zoom id="close_zoom_big" zoomHeightTo="1.1" target="{this}" zoomWidthTo="1.1" duration="250"/> <!-- 创建效果 --> <!-- 创建放大 --> <mx:Zoom id="create_zoom_smal" zoomHeightTo="1" target="{this}" zoomWidthTo="1" duration="100"/> <!-- 创建缩小 --> <mx:Zoom id="create_zoom_big" zoomHeightFrom="0.9" zoomHeightTo="1" target="{this}" zoomWidthFrom="0.9" zoomWidthTo="1" duration="230"/> </mx:TitleWindow> 测试类: <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"> <mx:Script> <![CDATA[ import mx.managers.PopUpManager; private function init():void { var tz:testZoom1 = new testZoom1(); PopUpManager.addPopUp(tz,this); } ]]> </mx:Script> <mx:Button label="弹出" click="init()"/> </mx:Application> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |