两点间缓动公式的运用和qq界面的制作

/*
两点间运动的缓冲公式
mc.x+=(目标位置x-mc.x)*缓冲系数
mc.y+=(目标位置y-mc.y)*缓冲系数
*/
import flash.events.MouseEvent;
import flash.events.Event;

var a:Number = 0.5;//缓冲系数
var endx:Number;//目标位置
var endy:Number;
stage.addEventListener(MouseEvent.CLICK,onstageClickHandler);
function onstageClickHandler(e:MouseEvent):void
{
 //鼠标坐标为目标坐标
 endx = this.mouseX;
 endy = this.mouseY;
 mc.addEventListener(Event.ENTER_FRAME,onmcmove);
}
function onmcmove(e:Event):void
{
 //计算目标位置与mc的坐标之差
 var dx:int = endx-mc.x;
 var dy:int = endy-mc.y;
 //根据缓冲公式计算速度并更新位置
 mc.x+=dx*a;
 mc.y+=dy*a;
 if(dx==0 && dy==0)//如果坐标之差为0,移除enterFrame事件侦听器
 {
  mc.removeEventListener(Event.ENTER_FRAME,onmcmove);
 }
}

 

package  {
 
 import flash.display.MovieClip;
 import flash.text.TextFormat;
 import flash.events.Event;
 import flash.events.MouseEvent;
 
 
 public class QQ extends MovieClip {
  
  private var yangshi:TextFormat=new TextFormat();//设置样式
  private var date:Date;
  public function QQ() {
   init();
  }
  private function init():void
  {
   this.addEventListener(Event.ENTER_FRAME,onEnterFrameHandler);
   
   
  }
  private function onEnterFrameHandler(e:Event):void
  {
   if(this.currentFrame==37)//当帧走到37帧时执行
   {

    gotoAndStop(37);
    yangshi.color=0x00ffff;
    yangshi.size=12;//字的大小
    cb1.setStyle("textFormat",yangshi);
    cb2.setStyle("textFormat",yangshi);
    cb3.setStyle("textFormat",yangshi);
    cb4.setStyle("textFormat",yangshi);
    zhanghao.text = "1059943686";
    mima.text = "88888888888";
    mima.displayAsPassword = true;//指定文本字段是否是密码文本字段。
    fuWuQi.visible = false;
    caidan.denglu.denglu_txt.text = "登录";
    caidan.denglu.denglu_txt.mouseEnabled = false;//不接受鼠标事件
    caidan.denglu.addEventListener(MouseEvent.CLICK,ondengluHandler);
    this.removeEventListener(Event.ENTER_FRAME,onEnterFrameHandler);
    this.addEventListener(Event.ENTER_FRAME,onshiJianEnterFrameHandler);//侦听到37帧后移除,只侦听一次
   }
  }
  private function onshiJianEnterFrameHandler(e:Event):void
  {//得出时间
   date = new Date();
   if(date.minutes < 10)
   {
    caidan.shijian.text = String(date.hours)+":"+"0"+String(date.minutes);
   }
   else
   {
    caidan.shijian.text = String(date.hours)+":"+String(date.minutes);
   }
  }
  private function ondengluHandler(e:MouseEvent):void
  {
   
   if(caidan.denglu.denglu_txt.text == "登录")
   {
    caidan.denglu.denglu_txt.text = "取消";
    fuWuQi.visible = true;
   }
   else
   {
    caidan.denglu.denglu_txt.text = "登录";
    fuWuQi.visible = false;
    
   }
   
  }
 }
 
}

posted on 2012-10-31 21:40  笔墨丹青  阅读(238)  评论(0)    收藏  举报

导航