两点间缓动公式的运用和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;
}
}
}
}
浙公网安备 33010602011771号