使用软件:flash   阅读次数:   收录时间:2007-08-04

FLASH中的移动方法教程和实例集锦(适合新手)

作者:sxl001  来源:闪吧
欢迎转载,敬请注明来源--闪吧和作者---sxl001---QQ:285510591
在此只探讨用AS语句去控制移动的方法。FLASH中能够移动的物体一般是舞台上的电影实例(为节省篇幅以下简称为MC,并且其实例名为my_mc)。FLASH中物体的移动是在X轴(即水平)方向或Y轴(垂直)方向的运动。因此,通过控制mc属性中的_x与_y的值就可以达到使其运动的目的。
一、匀速运动
1、水平方向上的向右匀速运动

方法一:
主场景第1帧:var mx=5;//设定初始速度为5
主场景第2帧:my_mc._x+=mx;//名称为my_mc的电影实例以步幅5的速度向右移动,
主场景第3帧:gotoAndPlay(2);// 跳转到第二帧,再次激发my_mc电影实例以步幅5的速度向右移动后又会跳转到此帧,并再次激发运动,如此周而得始地激发,就达到了不断向右运动的目的.
(见实例匀速运动1_1_1)

匀速运动1_1_1.swf
(2006-09-30 04:10:19 PM, Size: 2.06 kB, Downloads: 0)


匀速运动1_1_1.fla
(2006-09-30 04:10:19 PM, Size: 13.5 kB, Downloads: 0)



方法二:
主场景第1帧:
var mx = 5;//设定初始速度为5
this.onEnterFrame = function() {
        my_mc._x += mx;//不断刷新my_mc的向右运动
};//方法一需要3帧才能运动,而此方法二只需要一帧就可以使其运动,这是主要区别
(见实例匀速运动1_1_2_1)

匀速运动1_1_2_1.swf
(2006-09-30 04:11:23 PM, Size: 2.17 kB, Downloads: 0)


匀速运动1_1_2_1.fla
(2006-09-30 04:11:23 PM, Size: 15.5 kB, Downloads: 0)


或者:
var mx = 5;//初始速度值为5
onEnterFrame = function () {
        my_mc._x += mx;
};//此方法三与方法二的区别在于,方法二中this.onEnterFrame中的this是指当前时间轴;而在此方法三中直接用onEnterFrame,并未用this时,就表示暗指当前时间轴
(见实例匀速运动1_1_2_2)

匀速运动1_1_2_2.swf
(2006-09-30 04:12:23 PM, Size: 2.27 kB, Downloads: 0)


匀速运动1_1_2_2.fla
(2006-09-30 04:12:23 PM, Size: 15.5 kB, Downloads: 0)


或者:
var mx = 5;//初始速度值5
my_mc.onEnterFrame = function() {
        this._x += mx;
};//此处的my_mc.onEnterFrame指方法是加在my_mc上的.
(见实例匀速运动1_1_2_3)

匀速运动1_1_2_3.swf
(2006-09-30 04:13:13 PM, Size: 2.25 kB, Downloads: 0)


匀速运动1_1_2_3.fla
(2006-09-30 04:13:13 PM, Size: 11 kB, Downloads: 0)



方法三:
主场景my_mc上:
onClipEvent (load) {
        var mx = 5;//初始速度值5
}
onClipEvent (enterFrame) {
        _x += mx;//触发my_mc实例定义的动作是x轴坐标不断增值5。
}//(见实例匀速运动1_1_3_1)

匀速运动1_1_3_1.swf
(2006-09-30 04:16:26 PM, Size: 2.14 kB, Downloads: 0)


匀速运动1_1_3_1.fla
(2006-09-30 04:16:26 PM, Size: 15 kB, Downloads: 0)



方法四:
主场景第1帧:
function moveToRight(Object, xVar) {//定义函数的方法
        var mx = xVar;
        onEnterFrame = function () {
                Object._x += mx;
        };
}
moveToRight(my_mc, 5);
//(见实例匀速运动1_1_4_1)

匀速运动1_1_4_1.swf
(2006-09-30 04:16:26 PM, Size: 2.13 kB, Downloads: 0)


匀速运动1_1_4_1.fla
(2006-09-30 04:16:26 PM, Size: 10.5 kB, Downloads: 0)



方法五:
MovieClip.prototype.mcmove = function(Object, x) {
        var mx = x;
        onEnterFrame = function () {
                Object._x += mx;
        };
};
mcmove(my_mc, 5);//(见实例匀速运动1_1_5_1)

    评论加载中…
教程导航
FLASH/AS热门教程
使用Flash CS3开发AIR程序教程(AIR
[AIR]使用Flash CS3开发AIR程序教程(AIR beta2修正版) 【准备条件】: Flash CS3(目前AIR插件不支持中文版); AIR Runtime( http://labs.adobe.com/downloads/a...
作者:kinglong
FLASH的场景,图层(lawyer)和层(lev
对初学者来说,FLASH(这里一FLASH8为例)的场景、图层(lawyer)和层(level)很容易引起困惑的3个概念,今天看到大家在讨论涉及这个主题,我觉得有必要做一个比较系统...
作者:/
flashMX2004组件教程-Loader&progr
们今天继续来学习flash2004的组件Loader和progressBar。先来学习需要用到的主要代码: 1. Loader.contentPath=url; Loader载入对象的路径,可以是绝对路径,也可...
作者:溶剂
flash源码---韩国Flash源码会游动
flash源码---韩国Flash源码会游动的鱼 中国水墨效果,好象韩国目前很流行的一种效果! 本套代码由 websbook.com 编辑整理,转载请保留本文完整性. 效果图: 下载源文...
作者:websbook.com
解决 Flash 本地测试中出现安全警
默认情况下,在本地直接运行含有与外部通信的 swf 文件,会出现如图所示的安全警告。 解决的方法至少有四种: 一、需要有 Internet 网络连接,点击设置,进入官...
作者:luzhugao