制作实例:通过拖放改变图片大小
方法一:http://www.qiexing.com/post/change-image.html
方法二:新建一AS文档,制作三个影片剪辑,实例名分别为:image,block,scrollbar
将以下代码复制到时间轴第一帧:
block.x = scrollbar.x + scrollbar.width / 2;image.addEventListener(Event.ENTER_FRAME,updateHandle);
function updateHandle(evt:Event) {
image.scaleX = image.scaleY = (block.x - scrollbar.x) / scrollbar.width;
}block.addEventListener(MouseEvent.MOUSE_DOWN,blockDownHandle);
stage.addEventListener(MouseEvent.MOUSE_UP,blockUpHandle);function blockDownHandle(evt:MouseEvent) {
block.startDrag(false,scrollbar.getRect(this));
}function blockUpHandle(evt:MouseEvent) {
block.stopDrag();
}比较方法一和方法二,说说你的理解。
制作实例:鼠标跟随效果
1 学会通过网络查询没有学过的AS代码中的函数与属性的使用2 掌握[ ]的使用方法
3 新建一个AS文档,将背景设置成黑色
4 将以代码复制到时间轴第一帧,并运行
//================版权声明开始================//
//★且行资源:http://www.qiexing.com
//★且行资源所有教程欢迎转载,可以不注明出处。
//================版权声明结束================//
//请先将舞台设置为黑色
//设置文本内容var textStr:String="欢迎且行资源";
//设置文本的间距
var jianju:uint=20;
//设置移动速度
var speed:uint=2;
//获取字符数
var len:uint=textStr.length;
//创建TextFormat类,用于设置文本的样式
var textFormat:TextFormat=new TextFormat();
//字号
textFormat.size=14;
//颜色
textFormat.color=0xffff00;
//将文本添加到场景中
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;
}
}