课件常用脚本语言(ActionScript)实例_老李_新浪博客
{dy}节

几个简单交互实例,一般课件制作中必须用到的脚本语言极其功能的实现。

一、    设置全屏尺寸(使画面布满整个屏幕)

帧上的脚本语言:

将如下脚本语言写在主场景的{dy}帧上。

fscommand(\"fullscreen\",\"true\");



//调用Flash命令集中的命令,满屏,且当条件为真的时候。

★语词解释:

fs——Flash中的命令集    command——命令  full——布满    screen——屏幕    true——真    false——假



★操作注意:

1.    要在主场景中最上一层专门建立一个层,层的名字就命名为“as或Action”,只用来写脚本语言,这里的脚本多半是“stop();” 。

2.    写在帧上的脚本语言必须点选该帧,也就是在写脚本前先点击这个帧(选中对象再操作)。

3.    分辨率设置,一般是设置成800×600像素。

4.    所有的脚本只能写在帧上、按钮上和影片剪辑上。

5.    写在什么上就是要在写前先点击什么。

6.    只有在场景中才能对影片剪辑元件和按钮元件元件以及帧写入脚本(例如按钮没放上场景,则写不上去脚本语言)。



二、    退出(退出Flash动画的运行,也就是关闭。)

按钮上的脚本语言:(把脚本语言写在按钮上。先点选主场景中的那个按钮,再打开动作面板来写脚本。)

on(release){

    fscommand(\"quit\");

}



//当鼠标按下再释放的时候,运行命令集中的“退出”命令。



★语词解释:

on——在…的时候    release——释放    quit——退出

★操作注意:

1.    按钮上的脚本语言,要先做好按钮或使用库中的按钮,或者将其他元件转换成按钮,再将该按钮拖放到场景中。写脚本前先点选场景中的该按钮,再打开动作面板写脚本语言。

2.    也可以点“关闭”窗口来退出。

三、    前进(向前走一步,动画向下一个步骤运行,或是快进。)

按钮上的脚本语言:

on(release){

    nextFrame();

}



//当鼠标按下再释放的时候,往下走一帧(前进一帧)。



★语词解释:

next——下一个   frame——帧

★操作注意:

1.    脚本语言中的单词的大小写:凡是开头的单词首字母是要小写的,而中间的和后面的单词的首字母则要大写。在Flash中的ActionScript 语言里是要区分大小写的。

2.    当我们在写脚本语言的时候,边打字边可以看出写对了没有。当一个语句部分打字完了的时候,那个语句部分文字的颜色就变成了蓝色,如果还是黑色的,说明这个语句没打对。

3.    请大家养成背语句的好习惯,别用助手或其他的帮助来添加语句。也就是要把整个语句记住,一个个往上打字,不依赖工具

四、    后退(后退一帧,或是返回)

按钮上的脚本语言:

on(release){

    prevFrame();

}



//当鼠标按下再释放的时候,往上走一帧(后退一帧)。



★语词解释:

prev——(previous)返回上一级



五、    播放

按钮上的脚本语言:

on(release){

    play();

}



//当鼠标按下再释放的时候,运行动画。或开始播放。



★语词解释:

play——播放



六、    帧跳转(从某一帧跳转到任意的某一帧。这是很有用的脚本语言,也是用得比较多的交互脚本语言,简洁而方便。)

按钮上的脚本语言:

on(release){

    stopAllSounds();

    gotoAndStop(81);

}



//当鼠标按下再释放的时候,停止所有的声音,跳转并且停在第81帧处。



★语词解释:

stop——停止   all——所有的   sound——声音  

goto——转到   and——和



七、    控制对象的显示(多用于填空)(让对象可见与不可见的控制)

按钮上的脚本语言:

on(release){

   stopAllSounds();

    t1._visible=!t1._visible;

}



    同时,对应的帧上的脚本语言为:

stop();

t1._visible=0

t2._visible=0

t3._visible=0

t4._visible=0

t5._visible=0



//当鼠标按下再释放的时候,停止所有的声音,按钮的对象——影片剪辑实例t1为可见的时候,则变为不可见;如果不可见,则变为可见。

//(帧上的脚本)初始化——设置影片剪辑实例t1、t2、t3、t4、t5等不可见。



★语词解释:

visible——可见   !——非(逻辑符号:反)(相反的意思)



★操作注意:

1.    影片剪辑实例的名称——t1,一定要在场景的属性面板中将“实例名称”打字为t1 。

2.    逻辑运算符:(基本的逻辑——与、或、非)



表1  逻辑运算符

名   
运算符号
表达式
说   

与(AND)
&
A&B
只有A和B两个值都成立,整个条件才成立。

或(OR)
||
A||B
只要A或B任何一个成立,整个条件就算成立。

非(NOT)
!
!A
把成立的变为不成立的,把不成立的变为成立。





★帮助说明:

1.填空题的制作方法和步骤:

(1)、在主场景中画一个矩形,改为渐变色,打开属性面板,设置它的宽为800像素,高为600像素,x的值为0,y的值为0,接着把它转化为影片剪辑元件,命名为“背景图1”。我们就把这个背景图1当作在其他影片剪辑元件里的一个模子——是主场景的尺寸和位置。

(2)、添加一个“影片剪辑元件”,元件名就叫做“填空1”。

(3)、将制作好了的“背景图1”元件(这个背景图元件{zh0}在主场景中画一个矩形,并对齐场景工作区——800×600)放在这个“填空1”的{dy}层里,且中心对齐。

(4)、再把影片剪辑元件“填空1”从库里拖放到场景中去,并且对齐中心。在“填空1”里再加一个层,层的名字就叫做“文字”。把其他的层上锁和关眼,只留这个文字层。我们就在这个层里做填空题的文字部分,先把所有的内容都做上去,调整好外观。但是,不要让它们成为一个整体而是可以分开的各个部分。

(4)、再把影片剪辑元件“填空1”从库里拖放到场景中去,并且对齐中心。在“填空1”里再加一个层,层的名字就叫做“文字”。把其他的层上锁和关眼,只留这个文字层。我们就在这个层里做填空题的文字部分,先把所有的内容都做上去,调整好外观。但是,不要让它们成为一个整体而是可以分开的各个部分。

(5)、在主场景里的影片剪辑“填空1”里再加新的层,将文字层里的要填空的括号里的内容剪切到这个层,选“粘贴到当前位置”。把所有的该分离的部分都一个个分离到别的新建立的层中的“当前位置”上,并把它转化为影片剪辑元件和命名为t1、t2、t3……别忘了在属性面板里也要把“实例名称”改为t1 。

(6)、加一个新层,在里面对着那括号的位置和大小画一个矩形,接着把它转化为按钮元件。然后编辑这个按钮元件。按钮的四个帧,先选{zh1}一个帧“插入关键帧”。接着把{dy}帧选中,在这个帧里把那个矩形删除。这样,我们就做了一个隐藏按钮了。这个按钮就是我们要写脚本语言的按钮。它对应的填空内容(影片剪辑元件t1)就是这个按钮脚本语言的对象。

(7)、有几个要填空的就做几个按钮元件,相应的也把那需要填空的答案(“文字”或“图片”)也转换成(有几个就转换几个)影片剪辑元件。

(8)、好了,我们可以把那个做参照的“背景图1”元件所在的层删除掉。点选按钮元件,写上脚本语言。然后在影片剪辑元件“填空1”里最上面的层上再加一新层,写上帧脚本语言。

2.不要在主场景里做一大堆东西,而要把想做的内容都做到影片剪辑元件或其他元件里,再把这些元件拖放到主场景中。要使得主场景表面看起来很简洁,这不是为了主场景好看。

3.我们已经看到影片剪辑元件里还可以套另外的影片剪辑元件,这是个基本的技巧,就象程序的嵌套一样。大的套住小的,小的嵌在大的里面。嵌套可以多重多层。嵌套还可以是别的其他元件(如在影片剪辑元件里套其他影片剪辑元件和按钮元件以及图形元件)。

4.用Flash来做课件,要学会用积木组合的方法。多做些元件,因为元件可以重复使用,使得我们做的课件的文件比较小。修改一个元件能使得凡是使用这个元件的地方都修改了,更省事。

5.对层和元件要给相应的名字,刚开始学做课件的时候如果不习惯英文的话,就用点中文。但是,不要全部用中文,能用英文的地方尽量用,加强自己的英文训练。也可以用拼音来代替。要逐渐养成运用英文的习惯,慢慢积累,多了就自然熟悉啦。



八、    链接网站(运行Flash动画的时候,当点击某个按钮时,就直接打开了我们想要的网页。)

按钮上的脚本语言:

on(release){

    getURL(\"\",\"_blank\");

}



//当鼠标按下再释放的时候,获得网站地址“网址之家”(的空白页)。



★语词解释:

get——获得,到达   URL——固定资源定位器(网站地址)

blank——空白



★操作注意:

1.当我们写完了脚本语言的时候,请点“语法检查”按钮(√)让Flash自己给你做个检查,没问题了才关掉动作面板。

2.按钮上的脚本语言也可以用帧上的语言来代替,其格式是:

[img][/img]

★知识扩充:

运算符

表2   ActionScript的算术运算符

运算符
说     

+
相  

-
相  

*
相  

/
相  

%
模运算(取余数)



赋值是“=”,而Flash里边的等于是“==”两个相连的等号。

程序里的等号的意义是把等号右边的值或运算值赋给等号左边的元素。

九、    加载外部动画、图片等(网络上有很多课件资源,老师们也下载一些课件来用。我们希望把这些课件也做到自己的课件中去,而直接导入往往会破坏文件的结构,所以就可以使用加载动画的方法,把这些课件完整地做到自己的课件中去播放。外部就是那动画不在这个Flash里,但是要放在和这个Flash动画的播放文件相同的目录里——在同一个文件夹下。加载图片也和加载动画一样,所以只讲加载课件动画了。)(下面我们将从很具体的步骤开始)

1.    打开Flash 8 先做基本设置。

(1)、菜单栏的: 窗口—工具栏—主工具栏(勾选)、控制器(勾选)

(2)、新建一个Flash文档,设置文档属性:标题—***课件,尺寸—800×600像素,帧频—24帧/秒(fps),点“设为默认值”按钮,OK  

(3)、先做文档的保存(注意:建立一个专门的文件夹,文件夹里再建立几个文件夹分别放素材和相关的东西,这个Flash文档就放在这个文件夹的根目录下,文档名可以用拼音如FG1,就是风光1。)

(4)、设置场景显示比例为25%,好了,我们开始做。

假设我们要加载的动画文件是叫jz.swf(加载)

2.先做个背景图元件当做其他元件的场景模板(这个很重要的)。

(1)、画一矩形:按下矩形工具,设置:打开混色器面板,调节好线性的两种颜色,画出带渐变色的矩形,再用填充变形工具把这个矩形拉成40度左右,选中这个画好了的矩形,在其属性面板上将它的宽高设置为800×600,x和y都是0,它就和场景大小一样位置相等了。

(2)、把这个矩形转换成影片剪辑元件。元件名叫“背景图1”。它就到库中去了。

(3)、在主场景中把这个元件删除掉。以后要用影片剪辑元件做什么的时候,就把它放到里面的{dy}层里做场景的模板。我们就能在这个元件里看到场景的位置和大小尺寸了。它为我们做其他的东西带来了很方便的参考。

3.加载的外部动画是要放到一个影片剪辑中去的,而不是直接放到场景中,我们来做这个影片剪辑。在场景中画一矩形把这个矩形转换成影片剪辑—注册点选左上角—名称—loadswf(就是加载swf动画文件的意思)—OK。请记住这个影片剪辑的名字,也在它的属性面板里将实例名称改为loadswf,返回场景。

4.将场景中的loadswf元件点一下,设置属性里x和y为0就对齐了场景左上角啦,在属性面板里将“实例名称”改为loadswf。再打开动作面板,这是帧上的脚本语言,先点场景里的那个影片剪辑元件,再打开动作面板写脚本语言。

写上脚本语言:

onClipEvent(data){

    this._width=800;

    this._height=600;

}



//当影片剪辑加载数据的时候,画面的尺寸设置为800×600。



★语词解释:  

clip——夹子、剪辑(影片剪辑)    event——事件、场合   

data——数据   this——这个  width——宽度  height——高度



5.场景里加一层,名—按钮1,别的层上锁,在哪一层做事就只开哪一层的锁,放一个按钮到这个层来。一个元件放一个层里,不要把很多元件放到一个层里去。在场景里点一下这个按钮开始写脚本语言。

6.打开动作面板写:(这是按钮上的脚本语言,所以先在场景里点一下那按钮,再打开动作面板才能写脚本语言。)

on(release){

    unloadMovie(\"swf\");

    loadMovie(\"jz.swf\",\"loadswf\");

}



//当鼠标按下再释放的时候,xx掉原来加载的swf中的内容。加载相同目录下的一个叫做jz.swf的动画文件到影片剪辑loadswf中来。



★语词解释:

load——加载    unload——卸载    movie——电影(动画)



★知识扩展:

1.有时候,当要加载(调入)的.swf文件有一些我们不想要的画面内容(比如有原作者的署名、单位的标志等),我们想去掉又比较困难,有的课件的原来尺寸不符合我们的要求,有的课件我们只想要其中的一个片段,怎么办呢?可以在脚本语言里加上代码来设置它的属性,以达到我们的要求。

(1)、把播放头放到某一帧处让它播放,再把播放头放到某一帧处让它停止的方法来截取原课件中的片段。(前提是我们知道原课件里想要的部分在多少帧到多少帧,如果不知道,可以用逐次逼近法来测试。)

假设我们只想要原课件里的65帧到326帧的内容,其他部分不要,

那么,在脚本语言里可以增加这样的语句:_root.swf.gotoAndPlay(65);

使得脚本语言为:

on(release){

    unloadMovie(\"swf\");

    loadMovie(\"jz.swf\",\"loadswf\");

    _root.swf.gotoAndPlay(65);

}



//当鼠标在按钮上按下再释放的时候,先卸载原有的影片内容,再加载相同目录下的一个叫做jz.swf的文件到影片剪辑loadswf中来,主时间轴上的swf动画跳转到65帧处开始播放。



可以设置一个停止按钮,让动画暂停。

on(release){

    _root.swf.stop();

}



(2)、用遮盖原有标志的方法去掉原来课件中的标志。在loadswf影片剪辑里加一层,做出自己的标志元件,让它刚好能遮盖住原有的标志。



(3)、注册点:加载时我们一般是设置成左上角为参考点,也就是x和y以左上角为0,请打开“信息面板”,可以看到有九个参考注册点,这里就是可以对参考注册点设置的。不同的设置为加载的动画选定了不同的参考中心。

(4)、画面尺寸的设置:我们是设置成800×600的,想要其他的画面尺寸,可以自己设置。

(5)、有时候我们想多加载几个动画文件,那就再加几个按钮,每个按钮对应一个加载的动画。当然了,我们也可以用其他的方式来播放,比如做成连续播放的方式,做成点一次放一次的方式等等。为了制作的思路清晰和程序的简洁,建议大家还是一个个地控制为好。

2.帧频率设置,由于人眼的视觉暂留特性,使得一幅一幅接着播放的画面能让我们看到动的感觉。帧频少了就骗不了我们的眼睛,会让我们感觉到画面的闪烁;帧频大了会加大这个动画文件的容量。所以建议大家设置成24帧/秒—30帧/秒之间。特殊情况另外再做具体设置。

3.如果不想在影片剪辑里写脚本语言,而是把所有的脚本语言都写到按钮上的话,那么可以这样写:



on(release){

    loadswf._width=800;

    loadswf._height=600;

    unloadMovie(\"swf\");

    loadMovie(\"jz.swf\",\"loadswf\");

    _root.swf.gotoAndPlay(65);

movie_sound = new Sound(swf);

}



//当鼠标在该按钮上按下再释放的时候,这个叫做loadswf的影片剪辑元件的宽为800,高为600,卸载掉原来的动画内容,加载相同文件目录下的一个叫做“jz.swf”的动画文件到这个叫做“loadswf”的影片剪辑中来,主时间轴上的动画从65帧处开始播放,捆绑影片SWF中的声音文件。

十、场景跳转



nextScene();



//显示下一个场景中的{dy}帧且停止在{dy}帧上。



★语词解释:

  scene—场景



prevScene();



//显示上一个场景中的{dy}帧且停止在{dy}帧上。



请注意:有时候我们要用帧标签以及场景名称或场景编号来编辑场景跳转。



希望大家不要用较多的场景来做课件。{zh0}把所有的内容都做在一个个影片剪辑元件里,再把它们都放到一个场景中去。



★知识扩展:

1.为了以后能编写出比较复杂的语句,这里将程序编写的一些基本的知识介绍给大家。比较复杂的程序编写将放到ActionSctipt高级进阶篇里,到时候请大家去看。

(1)、从Flash5开始,Flash的语言采用了源自欧洲计算机制造商组织(European Computer Manufacturers Association,ECMA)的ECMAScript3标准规范和ECMAScript4标准规范,类似于Java语言和C以及C++语言。这样更有利于程序设计小组协同开发大型项目,也可以吸引既有的面向对象的程序员采用Flash开发项目。

(2)、★用户触发:用户按下鼠标按钮、按下按键而触发代码

    ★时间轴触发:影片按时间或自动触发运行的代码

(3)、程序运行的走向方式主要有三种:顺序、判断、循环。

顺序——程序运行时至上而下逐句执行,而没有分支。

判断——程序运行时出现分支,对判断条件进行判断,选择要执行的语句。

判断语句的格式:

If(判断条件){

      如果条件为真(即条件成立)则执行这里的语句

}else{

      如果条件为假(即条件不成立)则执行这里的语句

}

循环——程序不断重复执行某一段语句,直至条件为假时退出循环。

循环语句的格式:

For(初始值;判断条件;增量){

如果条件为假将退出循环否则将重复执行这里的语句。

}

增量常常是i++(i++就是i=i+1),即每次使变量i增加1。

(4)、函数——是为了实现某个功能而设计的一个指令的集合。可以理解为可以重复使用的代码块。

(5)、变量——程序暂存数据的地方称为变量。

(6)、常量——程序里一种存放固定不变量值的容器。

(7)、对象——是属性和方法的集合,可以被代码控制的东西。

(8)、类——是一个封装所有针对其对象操作的一个包。

(9)、方法——指的是对象的功能。

(10)、属性——代表对象的特性。





2.比较运算符

       表3  比较运算符



十一、鼠标拖动对象(要把画面中的某个对象用鼠标拖放到其他位置放好。也许对象有好几个,让操作者选择正确的那个对象来拖放,如果选对了再拖放,对象就能放到新的位置,如果选错了,则放不上去。这有点象填空题。)

1.  对象的拖动

影片剪辑元件和按钮元件是可以被拖动的两种对象。对象的拖动一般用动作语句来控制,startDrag语句用来拖动开始,stopDrag语句用来拖动结束。

拖动一个按钮元件本身可以使用语句:

on(press){

  startDrag(\"\");

}



//当鼠标在按钮上按下的时候,开始拖动。(括号内必须要有一对引号)



on(release){

  stopDrag();

}



//当鼠标在按钮上释放的时候,停止拖动。



★语词解释:

   Press—按下   start—开始    drag—拖曳   



2.  碰撞检测

我们用碰撞检测函数来判断两个对象是否相互接触。我们用hitTest函数来检测碰撞,还要求这两个对象都要有实例名称(也就是要在场景的属性面板上将“实例名称”改为我们为那元件起的英文名)。

可以用碰撞语句:

m1.hitTest(\"m2\");



//如果影片剪辑元件m1和m2发生碰撞,则函数返回true(真)值,否则返回false(假)值。



b1.hitTest(\"b2\");



//如果按钮元件b1和b2发生碰撞,则函数返回true(真)值,否则返回false(假)值。



★语词解释:

    hit—碰撞   test—检测



3.  用条件交互是程序里比较高级的交互方式。用条件交互是指当某一个动作、事件或结果出现的时候,如果满足设定的条件要求,就会触发相关的内容。程序在这里有分支出现。

我们把程序理解为这样的句子:

如果……(怎么)样,就会……(怎么)样。

否则,就会……(怎么)样。



4.  对象拖放《桃花的结构》实例操作步骤(这个实例步骤是1.制作课件封面,2.制作进入按钮和其他按钮,3.制作背景画面,4.制作拖放元件……)

(1)、前期工作。搜集相关的素材如桃花的图片,Gif图标,封面效果图片,声音素材,文字处理,做文件夹—名字就叫做“桃花的结构课件”,里面再做几个文件夹,分别叫做“素材”、“脚本”、“相关软件”、“课件说明”、“教案”等,在“素材”文件夹里再做“图片”、“声音”、“文字”、“视频”、“网页”、“动漫”等文件夹。各个文件夹里放入应有的文件和数据。课件题目等的文字处理—用Photoshop来做,很多图片也用这个来处理等等。

(2)、打开Flash 8 做好基本设置(略见前面部分)

(3)、把做封面用的图片导入到库里来,做好“背景图1”来作为其他影片剪辑元件的场景模板。

(4)、封面的制作。点“插入”—新建元件—影片剪辑—名称为—封面—OK。将库中的“背景图1”元件拖到“封面”里,且中心对齐,也就是把两个“+”号对齐,这里就可以看到场景的位置和大小了。返回场景,再把这个“封面”拖到场景里去,在属性面板里将x和y都设置为0就对齐场景了。在场景里对着那个图双击,就进入了场景下的这个“封面”元件了,在这里将“封面”加一层名称叫做背景图,其他层上锁,将导入的图片拖到这个层中来,在属性面板里把它的宽改为800,高改为600,x和y的值改为0。要是没对齐的话,就把x和y的值改为-400,-300或用“对齐”面板里的命令来对齐。再加一层,层的名称叫做课题,把课题文字导入到库,再把这个文字拖到这个层里,安排好位置。其他文字也是加一个层,给层名称,对其他层上锁,把对应的文字拖到里面或直接做文字,排好位置。每个零部件都加一层来放,一个元件放一层。如果想做成文字动画或文字{tx}的话,请先将它们放到别的影片剪辑元件里做好了再放到这里来。再加一层,名称叫做背景音乐,这个时候将我们搜集的背景音乐文件导入到库里来,把别的层上锁,选中这一层的{dy}帧,在属性面板中“声音”里将这个音乐文件加进来,在“效果”里改为“淡入”,在“同步”里改为“开始”—“循环”。封面就做好了。返回场景,这个时候,场景里只有一帧,一层,都是这个影片剪辑元件——封面。在场景里将这个层命名为封面。

(5)、按钮元件的制作和安排。在场景里加5个新的层,分别命名为按钮1、按钮2……将库中的按钮元件或别的Gif图片转换成的按钮元件一个个拖放到场景里的各个按钮层里来,对齐、排好。可以用菜单栏里的“修改”命令集里的“对齐”命令来做对齐。这些按钮的名称也可以是“导入新课”、“新课学习”、“知识扩充”、“考考你”、“趣味游戏”、“探究发现”等。按钮制作和按钮上文字的制作以及按钮{tx}等等将放在以后作为一个专门的章节来讲。现在场景里有6个层,每个层里只有一个元件。

(6)、在场景里最上面加一层,放脚本语言。层的名称叫做“AS”。先在这个层里的帧上写上脚本语言stop(); (注意:先把其他层上锁,再点这个层的{dy}帧,才打开动作面板写脚本语言。){zh0}让这个层总是在最上面。

(7)、按钮1对应的是“导入新课”部分,点击它就让程序进到场景里的第2帧去,我们把一个叫做“导入新课”的影片剪辑元件里放上我们想做的导入部分的内容。再把它放到这个按钮上新加的一个层里,层的名称也叫做“导入新课”,在这个层里“插入空白关键帧”,这个关键帧就加到第2帧了。将那个“导入新课”的影片剪辑元件拖放到这里。对所有层上锁,只开“按钮1”层的锁,点一下这个按钮,写上脚本语言:

on(release){

    stopAllSounds();

    gotoAndStop(2);

}

当按这个按钮的时候程序就跳到场景的第2帧上了。也就是运行“导入新课”里的内容了。也就是按钮1对应的是第2帧。

(8)、按钮2对应的是第3帧,按钮3对应的是第4帧,等等。

(9)、制作“返回”按钮,在“AS”层的下面加一层,层的名称叫做“返回按钮”。在这里放一个返回按钮,可以用这个按钮来当返回按钮—  ,且在这里把所有的帧都延长,它下面的帧有多长就延长对齐多长。写上脚本语言:

on(release){

    stopAllSounds();

    gotoAndStop(1);

}

//当鼠标在按钮上按下再释放的时候,停止所有声音,跳转并停止在第1帧处。也就是返回到封面的主界面上来了。



做了这么久了,该做个文件的保存啦。可是,还没进到我们的主题中来呐。以上部分是做课件的基本步骤和方法,也是做课件的基本功之一。请老师们多多练习。



(10)、现在制作我们的主要部分——鼠标拖动对象。我们用按钮3来做进入这个部分的控制部件,整个内容就放在一个影片剪辑元件“新课学习”里,且把这个元件放在场景的第4帧上。

按钮3上的脚本语言:

on(release){

    stopAllSounds();

    gotoAndStop(4);

}



//当鼠标在这个按钮上按下再释放的时候,停止所有的声音,跳转并停在第4帧处。

在按钮3这个层的上方加一新层,层名字就叫做“新课学习”。把其他的层上锁,这个层在第4帧上“插入空白关键帧”。这里将放“新课学习”影片剪辑元件。菜单栏“插入”—新建元件—名—新课学习—OK。将库中的“背景图1”元件拖到这个元件里,中心对齐,再返回场景,将影片剪辑元件“新课学习”拖到场景里的“新课学习”层的第4帧上来。打开“对齐”面板,让它相对于舞台(就是场景)对齐中心(垂直中齐、水平居中分布)。现在这个“新课学习”元件到了场景里了。在工作区里对着那图(“新课学习”元件)双击,就打开了场景下的“新课学习”元件。这个时候的编辑状态是把“新课学习”元件放到场景里去的,是在场景里对这个元件做编辑的。加一层,层名字叫背景。把其他的层上锁,把桃花图导入到库,再拖到这里排好位置。再加层放其他的东西,等把所有的东西都放好了就把那个放“背景图1”的层删除掉。
(10)、现在制作这个课件的主要部分——鼠标拖动对象。我们用按钮3来做进入这个部分的控制部件,整个内容就放在一个影片剪辑元件“新课学习”里,且把这个元件放在场景的第4帧上。

按钮3上的脚本语言:

on(release){

    stopAllSounds();

    gotoAndStop(4);

}



//当鼠标在这个按钮上按下再释放的时候,停止所有的声音,跳转并停在第4帧处。

在按钮3这个层的上方加一新层,层名字就叫做“新课学习”。把其他的层上锁,这个层在第4帧上“插入空白关键帧”。这里将放“新课学习”影片剪辑元件。菜单栏“插入”—新建元件—名—新课学习—OK。将库中的“背景图1”元件拖到这个元件里,中心对齐,再返回场景,将影片剪辑元件“新课学习”拖到场景里的“新课学习”层的第4帧上来。打开“对齐”面板,让它相对于舞台(就是场景)对齐中心(垂直中齐、水平居中分布)。现在这个“新课学习”元件到了场景里了。在工作区里对着那图(“新课学习”元件)双击,就打开了场景下的“新课学习”元件。这个时候的编辑状态是把“新课学习”元件放到场景里去的,是在场景里对这个元件做编辑的。加一层,层名字叫背景。把其他的层上锁,把桃花图导入到库,再拖到这里排好位置。再加层放其他的东西,等把所有的东西都放好了就把那个放“背景图1”的层删除掉。要是不删除画面也很美观的话,就保留这个层。将“花瓣”、“花托”、“花蕊”、“子房”等文字排在一方,将桃花图排在另一方,桃花图上画上线条和问号框,再把它们分别放到不同的层里去,原位粘贴好,回到原始图画面上,把该剪切的剪切掉。用逐层开眼的方法查看一下,是否对。再将问号框转换成影片剪辑元件分别对它们命名为d1、d2……将文字部分按词转换成按钮元件也分别命名为s1、s2、s3……我们就是要把s1拖到d1上、s2拖到d2上……别忘了在场景属性面板里将它们的“实例名称”改为相应的名字,否则将无法执行脚本语言。同样地,在“新课学习”影片剪辑元件里最上面加一层写脚本语言。这里,我们只讲一对对象的碰撞,其他的照着做就是。

帧上的脚本语言:

sx1=s1._x;

sy1=s1._y;

//获取s1按钮的x坐标并保存在变量sx1里。

//获取s1按钮的y坐标并保存在变量sy1里。



然后,在工作区里点一下按钮s1,打开动作面板写脚本语言。

按钮上的脚本语言:

on(press){            //当鼠标按下的时候

    startDrag(\"s1\");       //开始拖动按钮s1  

}

on(release){           //当鼠标释放的时候

    if(d1.hitTest(s1)){      //如果按钮s1和影片剪辑d1相碰撞

    s1._x=d1._x; //就使得按钮s1的x坐标等于影片剪辑d1的x坐标

    s1._y=d1._y; //就使得按钮s1的y坐标等于影片剪辑d1的y坐标

    }else{            //否则

        s1._x=sx1; //就使得按钮s1的x坐标等于变量sx1的值      

        s1._y=sy1; //就使得按钮s1的y坐标等于变量sy1的值

    }

    stopDrag();        //停止拖动

}
已投稿到:
郑重声明:资讯 【课件常用脚本语言(ActionScript)实例_老李_新浪博客】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——