一排文字始终跟随鼠标运动,而且运动有先后顺序的缓动效果,效果见下…

设计思路:将字符串文字用charAt分别读取,并利用for循环设置每个文字的坐标以及间距大小等….注意可直接将代码写到帧上..

参考代码:

//设置文本内容
var textStr:String=”欢迎光临设计三人行”;
//设置文本的间距
var jianju:uint=22;
//设置移动速度
var speed:uint=2;
//获取字符数
var len:uint=textStr.length;
//创建TextFormat类,用于设置文本的样式
var textFormat:TextFormat=new TextFormat();
//字号
textFormat.size=20;
//颜色
textFormat.color=”red”;
//将文本添加到场景中
for (var i:uint=0; i<len;i++){
//动态创建textField实例
this[“text”+i]=new TextField();
//将文本内容中的字符取出赋给创建的textField实例
this[“text”+i].text=textStr.charAt(i);
//设置默认位置
this[“text”+i].x=100+jianju*i;
this[“text”+i].y=200;
//样式化
this[“text” + i].setTextFormat(textFormat);
//在舞台显示
addChild(this[“text”+i]);
}
addEventListener(Event.ENTER_FRAME,genshui);
function genshui(e:Event) {
//默认情况下首字符的位置为鼠标位置
this.text0.x+=(root.mouseX+jianju-this.text0.x)/speed;
this.text0.y+=(root.mouseY-this.text0.y)/speed;
//接下来,是最重要的部分,逐个计算后面完全符的位置,根据首字符来计算
for(var i:uint=len-1;i>0;i–){
this[“text”+i].x+=(this[“text”+(i-1)].x+jianju-this[“text”+i].x)/speed;
this[“text”+i].y+=(this[“text”+(i-1)].y-this[“text”+i].y)/speed;
}
}

 

 

    博视界科技专注于沉浸式全景数字餐厅、全息酒店宴会厅,旨在帮传统餐饮用科技玩跨界,欢迎咨询!

官方网站:www.boseetech.com

联系方式:    

微信联系我:


    【声明】转载本文请注明出处三人行设计,并保留有效链接:flash as3简单的鼠标跟随文字 http://www.srxtuan.com/archives/1425,谢谢!