基于Flash脚本的拖曳题课件

时间:2022-06-05 11:35:08

基于Flash脚本的拖曳题课件

摘要:在制作拖曳题类型课件方面,Flash具有其它课件制作软件不可比拟的优势,该文通过一个拖曳题课件实例的研究,分析了用Flash制作拖曳题课件的方法。

关键词:Flash;课件;拖曳题;脚本;Action Script

分类号:G434 文献标识码:A文章编号:1009-3044(2009)36-10629-02

A Towing Topic Courseware Based on Flash Script

PAN Ping, FU Yu-jiang

(The Numerical Code Design Department OF Hainan Software Professional Technology Institute, Qionghai 571400, China)

Abstract: In the manufacture towing topic type courseware aspect, Flash has the other courseware manufacture software incomparable superiority, this article through a towing topic courseware example research, analyzed has manufactured the towing topic courseware with Flash the method.

Key words:Flash; courseware; towing topic; script; action script

在众多的多媒体课件中,练习与测验类课件是比较常见的一种类型。这类课件充分利用了计算机的交互性、多媒体性和智能性,使教育过程中的练习和测验活动变得更加有效。练习与测验类课件一般包括:判断题、选择题、填空题、拖曳题、连线题等类型。其中,拖曳题是练习与测验类课件中主要的题型之一,使用范围广泛。所谓拖曳题是指将指定的物体拖到目标区域,根据到达的位置反映出相应的结果,如果物体没有到达目标区域,则自动返回原位。高级编程语言(比如VB)可以较好地实现此类课件的制作,但编程过程复杂,没有很好编程经验的一般使用者不易掌握。相对于其他的高级编程语言,Flash是制作练习与测验类课件的最佳选择。

Flash是美国Adobe公司出品的目前最流行的多媒体课件制作软件之一。利用Flash课件能将抽象的知识以动画的形式生动地表现出来,通过Flash中内置的动作语言,还可以制作出各类交互性课件,大大丰富和增强了课件的教学功能。Flash 8是Flash的最新版本,用它制作的拖曳题课件功能强大、交互性好、可移植性强,具有其它制作软件不可比拟的优势。

1 相关命令

1.1 开始拖拽命令

命令格式:startDrag(target,[lock ,left ,top ,right,bottom]) 或target.startDrag([lock ,left ,top , right, bottom])。

参数说明:target --要拖动的影片剪辑的目标路径。Lock ― 一个布尔值,指定可拖动影片剪辑是锁定到鼠标位置中央(true),还是锁定到用户首次单击该影片剪辑的位置上(false)。此参数是可选的。Left,top,right,bottom ―相对于该影片剪辑的父级的坐标的值,用以指定该影片剪辑的约束矩形。这些参数是可选的。

命令讲解:使target影片剪辑在影片播放过程中可拖动。一次只能拖动一个影片剪辑。执行startDrag()操作后,影片剪辑将保持可拖动状态,直到用stopDrag()显式停止拖动为止,或直到对其它影片剪辑调用了startDrag()动作为止。

1.2 停止拖拽命令

命令格式:stopDrag()。

命令讲解:停止当前的拖动操作。

1.3 碰撞命令

命令格式:mc.hitTest(x,y,shapeFlag)或mc.hitTest(target)。

参数说明:mc--被拖动影片剪辑的实例名。x--舞台上点击区域的x坐标。y―舞台上点击区域的y坐标。shapeFlag― 一个布尔值,指定是计算指定实例的整个形状(true)还是仅计算边框(false)。只有当用x和y坐标参数标识点击区域时,才可以指定该参数。target―可能与由mc指定的实例交叉或重叠的点击区域的目标路径。target参数通常表示一个按钮或文本输入字段。

命令解释:计算由mc指定的影片剪辑实例,以确认其是否与由x和y坐标参数或targe t标识的点击区域发生重叠或相交。用法1:根据shapeFlag设置,将x和y坐标与指定实例的形状或边框进行比较。如果shapeFlag设置为true,则只计算在舞台上的实例实际占据的区域,并且如果x和y在任意一点重叠,则返回true值。此评估对于确定影片剪辑是否处于指定的点击区域或热点区域中很有用。用法2:计算target和指定实例的边框,如果它们在任意一点上重叠或交叉,则返回true。

2 课件的界面和代码

2.1 课件的界面设计

本文要制作一个拖曳型练习课件,即拖动正确的答案到合适的位置上,则反馈文本显示“Congratulations!”,否则显示“Please try again!”。首先,新建一个Flash文档,在舞台上的合适位置用“文本工具”放置一个静态文本,内容为“Drag the items to the proper locations.”。然后用“文本工具”输入四个英语单词,四个括号及四个答案,并排列好位置,最下面的位置用“文本工具”放置一个动态文本(即在“文本工具”的“属性”面板中选择“动态文本”),调整好合适的宽度。设计好的界面如图1所示。

2.2 元件的转换和代码设计

1)将输入的四个答案从左到右依次转换为“影片剪辑”,并在其“属性”面板中将“实例名称”依次设为ml,m2,m3,m4。

2)将输入的四个括号从上到下依次转换为“影片剪辑”,并在其“属性”面板中将“实例名称”依次设为hitml,hitm2,hitm3,hitm4。

3)将动态文本的变量名设为“t1”(即在动态文本的“属性”面板中的“变量”中填入t1)。

4)添加一个图层并命名为“as”,为该图层的第一帧添加如下语句:

m1.onPress = function() {

_root.m1.startDrag();

x0 = getProperty(_root.hitm1, _x);

y0 = getProperty(_root.hitm1, _y);

x1 = _root.m1._x;

y1 = _root.m1._y;

};

m1.onRelease = function() {

_root.m1.stopDrag();

if (_root.m1.hitTest(x0, y0, 1)) {

_root.m1._x = x0;

_root.m1._y = y0;

_root.t.text = "Congratulations!";

} else {

_root.m1._x = x1;

_root.m1._y = y1;

_root.t.text = "Please try again!";

}

};

5)在上述语句后面继续为m2,m3,m4添加同样的语句,只是把上述语句中的ml改为m2,m3,m4,语句中的目标影片剪辑实例hitm1相应地改为hitm2,hitm3,hitm4,此处不再赘述。课件后运行界面如图2所示。

3 结束语

拖曳型课件拓展性较强,在教学中应用比较广,利用拖拽型课件可以独立制作某些练习与测验题目,也可以结合其他类的课件形式实现多样式命题。掌握拖曳型课件的设计思路和制作方法后,我们可以轻松地制作出更多交互性强的教学课件。

参考文献:

[1] 缪亮.Flash多媒体课件制作实用教程[M].北京:清华大学出版社,2008.

[2] 章精设.Flash Action Script 2.0编程技术教程[M].北京:清华大学出版社,2005.

[3] 陈冬.Flash Action Script 2.0互动编程从基础到应用[M].北京:人民邮电出版社,2006.

上一篇:高校教材网络管理系统的设计与实现 下一篇:数据空间的数据项研究