Flex滑动面板,类似QQ隐藏效果

想做一个悬浮菜单,自动隐藏到界面边缘,鼠标移上去时滑动展开。在网上找到一个代码,效果里面有点小小bug:鼠标移到面板位置不动时,面板会一直闪烁。我对代码进行了一点优化,现在可以正常的展现:
<?xml version="1.0"?>   
  1. <!-- Simple example to demonstrate the Move effect. -->   
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()">   
  3.   
  4.     <mx:Script>   
  5.         <![CDATA[   
  6.             import mx.controls.Alert;   
  7.                
  8.             private function init():void{   
  9.                 //初始默认将百分之九十的图片隐藏起来。通过y轴的福坐标来设置   
  10.                 img.y=0-(img.height*0.90  
  11.             }              
  12.             //当鼠标覆盖的时候 将图片显示出来   
  13.             private function moveMOverImage():void {   
  14.                 /优化///   
  15.                 if(myMove.isPlaying)   
  16.                 myMove.stop();   
  17.                 ///   
  18.                 myMove.yTo=0;    
  19.                 myMove.play();   
  20.             }   
  21.                
  22.             //鼠标移开的时候在将图片重新隐藏   
  23.             private function moveMOutImage():void {   
  24.                 /优化///   
  25.                 if(myMove.isPlaying)   
  26.                 myMove.stop();   
  27.                 ///   
  28.                 myMove.yTo=0-(img.height*0.90);    
  29.                 myMove.play();   
  30.             }   
  31.                
  32.                
  33.       ]]>   
  34.     </mx:Script>   
  35.   
  36.     <mx:Move id="myMove" target="{img}"  />   
  37.   
  38.     <mx:Panel title="Move Effect Example" width="95%" height="95%"    
  39.         paddingTop="5" paddingLeft="10" paddingRight="10" paddingBottom="5">   
  40.   
  41.         <mx:Canvas id="canvas" width="100%" height="100%" >   
  42.   
  43.             <mx:Image id="img" source="@Embed(source='beijing.png')"   mouseOver="moveMOverImage();" mouseOut="moveMOutImage();" />   
  44.   
  45.         </mx:Canvas>   
  46.        
  47.     </mx:Panel>   
  48. </mx:Application>  
<?xml version="1.0"?>
<!-- Simple example to demonstrate the Move effect. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="init()">

    <mx:Script>
        <![CDATA[
            import mx.controls.Alert;
			
            private function init():void{
                //初始默认将百分之九十的图片隐藏起来。通过y轴的福坐标来设置
                img.y=0-(img.height*0.90
            }			
            //当鼠标覆盖的时候 将图片显示出来
            private function moveMOverImage():void {
                /优化///
                if(myMove.isPlaying)
                myMove.stop();
                ///
                myMove.yTo=0; 
                myMove.play();
            }
            
            //鼠标移开的时候在将图片重新隐藏
            private function moveMOutImage():void {
                /优化///
                if(myMove.isPlaying)
                myMove.stop();
                ///
                myMove.yTo=0-(img.height*0.90); 
                myMove.play();
            }
            
            
      ]]>
    </mx:Script>

    <mx:Move id="myMove" target="{img}"  />

    <mx:Panel title="Move Effect Example" width="95%" height="95%" 
        paddingTop="5" paddingLeft="10" paddingRight="10" paddingBottom="5">

        <mx:Canvas id="canvas" width="100%" height="100%" >

            <mx:Image id="img" source="@Embed(source='beijing.png')"   mouseOver="moveMOverImage();" mouseOut="moveMOutImage();" />

        </mx:Canvas>
    
    </mx:Panel>
</mx:Application>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值