摘要:在制作拖曳題類型課件方面,F(xiàn)lash具有其它課件制作軟件不可比擬的優(yōu)勢(shì),該文通過(guò)一個(gè)拖曳題課件實(shí)例的研究,分析了用Flash制作拖曳題課件的方法。
關(guān)鍵詞:Flash;課件;拖曳題;腳本;Action Script
分類號(hào):G434 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):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
在眾多的多媒體課件中,練習(xí)與測(cè)驗(yàn)類課件是比較常見(jiàn)的一種類型。這類課件充分利用了計(jì)算機(jī)的交互性、多媒體性和智能性,使教育過(guò)程中的練習(xí)和測(cè)驗(yàn)活動(dòng)變得更加有效。練習(xí)與測(cè)驗(yàn)類課件一般包括:判斷題、選擇題、填空題、拖曳題、連線題等類型。其中,拖曳題是練習(xí)與測(cè)驗(yàn)類課件中主要的題型之一,使用范圍廣泛。所謂拖曳題是指將指定的物體拖到目標(biāo)區(qū)域,根據(jù)到達(dá)的位置反映出相應(yīng)的結(jié)果,如果物體沒(méi)有到達(dá)目標(biāo)區(qū)域,則自動(dòng)返回原位。高級(jí)編程語(yǔ)言(比如VB)可以較好地實(shí)現(xiàn)此類課件的制作,但編程過(guò)程復(fù)雜,沒(méi)有很好編程經(jīng)驗(yàn)的一般使用者不易掌握。相對(duì)于其他的高級(jí)編程語(yǔ)言,F(xiàn)lash是制作練習(xí)與測(cè)驗(yàn)類課件的最佳選擇。
Flash是美國(guó)Adobe公司出品的目前最流行的多媒體課件制作軟件之一。利用Flash課件能將抽象的知識(shí)以動(dòng)畫(huà)的形式生動(dòng)地表現(xiàn)出來(lái),通過(guò)Flash中內(nèi)置的動(dòng)作語(yǔ)言,還可以制作出各類交互性課件,大大豐富和增強(qiáng)了課件的教學(xué)功能。Flash 8是Flash的最新版本,用它制作的拖曳題課件功能強(qiáng)大、交互性好、可移植性強(qiáng),具有其它制作軟件不可比擬的優(yōu)勢(shì)。
1 相關(guān)命令
1.1 開(kāi)始拖拽命令
命令格式:startDrag(target,[lock ,left ,top ,right,bottom]) 或target.startDrag([lock ,left ,top , right, bottom])。
參數(shù)說(shuō)明:target --要拖動(dòng)的影片剪輯的目標(biāo)路徑。Lock — 一個(gè)布爾值,指定可拖動(dòng)影片剪輯是鎖定到鼠標(biāo)位置中央(true),還是鎖定到用戶首次單擊該影片剪輯的位置上(1)。此參數(shù)是可選的。Left,top,right,bottom —相對(duì)于該影片剪輯的父級(jí)的坐標(biāo)的值,用以指定該影片剪輯的約束矩形。這些參數(shù)是可選的。
命令講解:使target影片剪輯在影片播放過(guò)程中可拖動(dòng)。一次只能拖動(dòng)一個(gè)影片剪輯。執(zhí)行startDrag()操作后,影片剪輯將保持可拖動(dòng)狀態(tài),直到用stopDrag()顯式停止拖動(dòng)為止,或直到對(duì)其它影片剪輯調(diào)用了startDrag()動(dòng)作為止。
1.2 停止拖拽命令
命令格式:stopDrag()。
命令講解:停止當(dāng)前的拖動(dòng)操作。
1.3 碰撞命令
命令格式:mc.hitTest(x,y,shapeFlag)或mc.hitTest(target)。
參數(shù)說(shuō)明:mc--被拖動(dòng)影片剪輯的實(shí)例名。x--舞臺(tái)上點(diǎn)擊區(qū)域的x坐標(biāo)。y—舞臺(tái)上點(diǎn)擊區(qū)域的y坐標(biāo)。shapeFlag— 一個(gè)布爾值,指定是計(jì)算指定實(shí)例的整個(gè)形狀(true)還是僅計(jì)算邊框(1)。只有當(dāng)用x和y坐標(biāo)參數(shù)標(biāo)識(shí)點(diǎn)擊區(qū)域時(shí),才可以指定該參數(shù)。target—可能與由mc指定的實(shí)例交叉或重疊的點(diǎn)擊區(qū)域的目標(biāo)路徑。target參數(shù)通常表示一個(gè)按鈕或文本輸入字段。
命令解釋:計(jì)算由mc指定的影片剪輯實(shí)例,以確認(rèn)其是否與由x和y坐標(biāo)參數(shù)或targe t標(biāo)識(shí)的點(diǎn)擊區(qū)域發(fā)生重疊或相交。用法1:根據(jù)shapeFlag設(shè)置,將x和y坐標(biāo)與指定實(shí)例的形狀或邊框進(jìn)行比較。如果shapeFlag設(shè)置為true,則只計(jì)算在舞臺(tái)上的實(shí)例實(shí)際占據(jù)的區(qū)域,并且如果x和y在任意一點(diǎn)重疊,則返回true值。此評(píng)估對(duì)于確定影片剪輯是否處于指定的點(diǎn)擊區(qū)域或熱點(diǎn)區(qū)域中很有用。用法2:計(jì)算target和指定實(shí)例的邊框,如果它們?cè)谌我庖稽c(diǎn)上重疊或交叉,則返回true。
2 課件的界面和代碼
2.1 課件的界面設(shè)計(jì)
本文要制作一個(gè)拖曳型練習(xí)課件,即拖動(dòng)正確的答案到合適的位置上,則反饋文本顯示“Congratulations!”,否則顯示“Please try again!”。首先,新建一個(gè)Flash文檔,在舞臺(tái)上的合適位置用“文本工具”放置一個(gè)靜態(tài)文本,內(nèi)容為“Drag the items to the proper locations.”。然后用“文本工具”輸入四個(gè)英語(yǔ)單詞,四個(gè)括號(hào)及四個(gè)答案,并排列好位置,最下面的位置用“文本工具”放置一個(gè)動(dòng)態(tài)文本(即在“文本工具”的“屬性”面板中選擇“動(dòng)態(tài)文本”),調(diào)整好合適的寬度。設(shè)計(jì)好的界面如圖1所示。
2.2 元件的轉(zhuǎn)換和代碼設(shè)計(jì)
1)將輸入的四個(gè)答案從左到右依次轉(zhuǎn)換為“影片剪輯”,并在其“屬性”面板中將“實(shí)例名稱”依次設(shè)為ml,m2,m3,m4。
2)將輸入的四個(gè)括號(hào)從上到下依次轉(zhuǎn)換為“影片剪輯”,并在其“屬性”面板中將“實(shí)例名稱”依次設(shè)為hitml,hitm2,hitm3,hitm4。
3)將動(dòng)態(tài)文本的變量名設(shè)為“t1”(即在動(dòng)態(tài)文本的“屬性”面板中的“變量”中填入t1)。
4)添加一個(gè)圖層并命名為“as”,為該圖層的第一幀添加如下語(yǔ)句:
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)在上述語(yǔ)句后面繼續(xù)為m2,m3,m4添加同樣的語(yǔ)句,只是把上述語(yǔ)句中的ml改為m2,m3,m4,語(yǔ)句中的目標(biāo)影片剪輯實(shí)例hitm1相應(yīng)地改為hitm2,hitm3,hitm4,此處不再贅述。課件后運(yùn)行界面如圖2所示。
3 結(jié)束語(yǔ)
拖曳型課件拓展性較強(qiáng),在教學(xué)中應(yīng)用比較廣,利用拖拽型課件可以獨(dú)立制作某些練習(xí)與測(cè)驗(yàn)題目,也可以結(jié)合其他類的課件形式實(shí)現(xiàn)多樣式命題。掌握拖曳型課件的設(shè)計(jì)思路和制作方法后,我們可以輕松地制作出更多交互性強(qiáng)的教學(xué)課件。
參考文獻(xiàn):
[1] 繆亮.Flash多媒體課件制作實(shí)用教程[M].北京:清華大學(xué)出版社,2008.
[2] 章精設(shè).Flash Action Script 2.0編程技術(shù)教程[M].北京:清華大學(xué)出版社,2005.
[3] 陳冬.Flash Action Script 2.0互動(dòng)編程從基礎(chǔ)到應(yīng)用[M].北京:人民郵電出版社,2006.