為了移動(dòng)屏幕上的物體,使用鍵盤(pán)控制是一種常用的方法。由于4個(gè)方向鍵和esc鍵在authorware 6.0中對(duì)應(yīng)的鍵名分別是uparrow,downarrow,leftarrow,rightarrow和esc,因此通過(guò)上述鍵名就可以控制對(duì)象的移動(dòng)。在本例中將移動(dòng)對(duì)象確定為紅色的圓球,并將移動(dòng)的區(qū)域定義為一個(gè)4×4的正方形網(wǎng)格。當(dāng)圓球到達(dá)網(wǎng)格的邊緣時(shí),要求它不再移動(dòng)。為了實(shí)現(xiàn)這一點(diǎn),可在按鍵響應(yīng)的屬性對(duì)話框內(nèi)定義按鍵響應(yīng)的條件。
通過(guò)按鍵移動(dòng)對(duì)象
(1) 單擊new按鈕,創(chuàng)建新的課件文件。
(2) 將計(jì)算圖標(biāo)拖動(dòng)到流程線上,并命名為“定義變量”。
(3) 雙擊“定義變量”圖標(biāo),在編輯窗口內(nèi)輸入“x:=1、y:=1”。
(4) 將顯示圖標(biāo)拖動(dòng)到“定義變量”圖標(biāo)的下方,并將它命名為“底圖”。
(5) 雙擊“底圖”圖標(biāo),打開(kāi)演示窗口。
(6) 選擇繪圖工具的矩形工具之后,在演示窗口內(nèi)繪制正方形。
(7) 選擇繪圖工具的直線工具之后,將正方形分成16等份(如圖9-14所示)。
圖9-14 將正方形分成16等份
(8) 將顯示圖標(biāo)拖動(dòng)到“底圖”圖標(biāo)的下方,并將它命名為“圓球”。
(9) 雙擊“圓球”圖標(biāo),打開(kāi)演示窗口。
(10) 在演示窗口內(nèi)使用橢圓繪圖工具繪制圓形。
(11) 使用紅色填充圓形。
(12) 將交互圖標(biāo)拖動(dòng)到“圓球”圖標(biāo)的下方,并命名為“移動(dòng)圓球”。
(13) 將群組圖標(biāo)拖動(dòng)到“移動(dòng)圓球”的右側(cè),打開(kāi)response type對(duì)話框。
(14) 選中keypress單選按鈕之后,單擊ok按鈕打開(kāi)的對(duì)話框。
(15) 將群組圖標(biāo)命名為uparrow之后,雙擊按鍵響應(yīng)的標(biāo)識(shí)符,打開(kāi)properties:response對(duì)話框。
(16) 在response選項(xiàng)卡內(nèi),在active if文本框內(nèi)輸入“y<=3”。
(17) 打開(kāi)erase下拉列表框,選擇after next entry。
(18) 打開(kāi)branch下拉列表框,選擇continue。
(19) 打開(kāi)status下拉列表框,選擇not judged (如圖9-15所示)。
圖9-15 設(shè)置uparrow圖標(biāo)的響應(yīng)屬性
(20) 關(guān)閉打開(kāi)的properties:response對(duì)話框。
(21) 雙擊uparrow群組圖標(biāo),打開(kāi)二級(jí)流程窗口。
(22) 將計(jì)算圖標(biāo)拖動(dòng)到二級(jí)流程線上,并命名為y+1。
(23) 雙擊計(jì)算圖標(biāo),在編輯窗口內(nèi)輸入y:=y+1之后,關(guān)閉打開(kāi)的編輯窗口。
(24) 重復(fù)上述(13)~(23)步的操作,在“移動(dòng)圓球”交互圖標(biāo)的右側(cè)添加downarrow群組圖標(biāo),在按鈕響應(yīng)的屬性對(duì)話框內(nèi)將active if修改為y:=y–1。
(25) 重復(fù)上述(13)~(23)步的操作,在“移動(dòng)圓球”交互圖標(biāo)的右側(cè)添加rightarrow群組圖標(biāo),在按鈕響應(yīng)的屬性對(duì)話框內(nèi)將active if修改為x:=x–1。
(26) 重復(fù)上述(13)~(23)步的操作,在“移動(dòng)圓球”交互圖標(biāo)的右側(cè)添加leftarrow群組圖標(biāo),在按鈕響應(yīng)的屬性對(duì)話框內(nèi)將active if修改為x:=x–1。
(27) 將計(jì)算圖標(biāo)拖動(dòng)到rightarrow圖標(biāo)的右側(cè),打開(kāi)response type對(duì)話框。
(28) 選擇keypress單選按鈕之后,單擊ok按鈕,關(guān)閉打開(kāi)的對(duì)話框。
(29) 將計(jì)算圖標(biāo)命名為esc之后,雙擊打開(kāi)編輯窗口。
(30) 在編輯窗口內(nèi)輸入quit (1)。
(31) 雙擊esc圖標(biāo)的響應(yīng)標(biāo)識(shí)符,打開(kāi)properties:response對(duì)話框。
(32) 在response選項(xiàng)卡內(nèi)打開(kāi)branch下拉列表框,選擇exit interaction。
(33) 單擊ok按鈕,關(guān)閉打開(kāi)的properties:response對(duì)話框。
(34) 將群組圖標(biāo)拖動(dòng)到esc圖標(biāo)的右側(cè),打開(kāi)response type對(duì)話框。
(35) 選中continue單選按鈕之后,單擊ok按鈕,關(guān)閉打開(kāi)的對(duì)話框。
(36) 將群組圖標(biāo)命名為true。
(37) 雙擊true圖標(biāo)的響應(yīng)標(biāo)識(shí)符,打開(kāi)properties:response對(duì)話框。
(38) 在response選項(xiàng)卡內(nèi)打開(kāi)branch下拉列表框,選擇continue。
(39) 單擊ok按鈕,關(guān)閉打開(kāi)的properties:response對(duì)話框。
(40) 雙擊true群組圖標(biāo),在其中添加一個(gè)移動(dòng)圖標(biāo),將命名為“移動(dòng)”。
(41) 執(zhí)行課件文件,當(dāng)演示窗口內(nèi)出現(xiàn)正方形方格與圓球時(shí),雙擊移動(dòng)圖標(biāo),打開(kāi)properties:motion icon對(duì)話框。
圖9-16 properties: motion icon對(duì)話框
(42) 選擇layout標(biāo)簽,打開(kāi)layout選項(xiàng)卡。
(43) 選中base單選按鈕之后,將演示窗口的圓球拖動(dòng)到左下角的方格中心處。
(44) 在base右側(cè)的文本框內(nèi)輸入(1,1)。
(45) 選中end單選按鈕之后,將演示窗口的圓球拖動(dòng)到右上角的方格中心處。
(46) 在end右側(cè)的文本框內(nèi)輸入(4,4)。
(47) 選中destination單選按鈕之后,在右側(cè)的文本框內(nèi)輸入(x,y)。
(48) 選擇motion選項(xiàng)卡,在timing文本框內(nèi)選擇time (sec)。
(49) 在timing下方的方框內(nèi)輸入0.5,表示逐格移動(dòng)的時(shí)間為0.5秒。
(50) 打開(kāi)concurrency下拉列表框,選擇concurrent。
(51) 打開(kāi)beyond range下拉列表框,選擇stop at ends選項(xiàng),如圖9-17所示。
(52) 單擊ok按鈕,關(guān)閉打開(kāi)的properties:motion icon對(duì)話框。
(53) 至此,得到如圖9-18所示的課件流程圖。
圖9-17 設(shè)置移動(dòng)圖標(biāo)的motion選項(xiàng)卡
圖9-18 課件流程圖
(54) 播放、測(cè)試并保存課件文件。
播放課件時(shí),首先紅色的圓球出現(xiàn)在演示窗口的左下角,單擊四個(gè)方向鍵之后,可以逐格移動(dòng)圓球,并且圓球不會(huì)突破正方形定義的區(qū)域。在此采用的坐標(biāo)系是這樣的:水平向右為x軸的正方向,垂直向上為y軸的正方向,并且將坐標(biāo)原點(diǎn)定義在演示窗口的左下角。因此向右移動(dòng)一格時(shí),x加1,向上移動(dòng)一格時(shí),y加1。由于將x<=3及y<=3作為按鍵響應(yīng)的條件,因此圓球是無(wú)法超出自定義的區(qū)域的。
由于鍵盤(pán)的鍵名與authorware 6.0的按鍵具有對(duì)應(yīng)關(guān)系,因此可通過(guò){press}系統(tǒng)變量接受鍵盤(pán)的鍵名,然后將它顯示在演示窗口內(nèi)。為了開(kāi)始播放課件,可以在接受鍵名之前,添加一個(gè)名為“開(kāi)始”的按鈕,當(dāng)也可以刷新當(dāng)前的屏幕。
按鍵響應(yīng)示例
(1) 單擊工具欄的new按鈕,創(chuàng)建新的課件文件。
(2) 將計(jì)算圖標(biāo)拖動(dòng)到流程線上,命名為“窗口大小”。
(3) 雙擊“窗口大小”圖標(biāo),打開(kāi)編輯窗口。
(4) 在其中輸入resizewindow(300,240)。
(5) 關(guān)閉編輯窗口。
(6) 將顯示圖標(biāo)拖動(dòng)到“窗口大小”的下方,將它命名為“背景”。
(7) 雙擊“背景”圖標(biāo),打開(kāi)演示窗口。
(8) 使用ctrl+shift+r組合鍵導(dǎo)入一幅圖片作為背景。
(9) 將顯示圖標(biāo)拖動(dòng)到“按鈕”圖標(biāo)的下方,并命名為“提示”。
(10) 雙擊打開(kāi)“提示”圖標(biāo)的演示窗口,在其中輸入“請(qǐng)按任意鍵”。
(11) 將“提示”圖標(biāo)的內(nèi)容設(shè)置為透明。
(12) 將交互圖標(biāo)拖動(dòng)到“背景”圖標(biāo)的下方,命名為“按鍵”。
(13) 將顯示圖標(biāo)拖動(dòng)到“按鈕”圖標(biāo)的右下角,打開(kāi)response type對(duì)話框。
(14) 選中button單選按鈕之后,單擊ok按鈕。
(15) 將顯示圖標(biāo)命名為“開(kāi)始”按鈕。
(16) 雙擊“開(kāi)始”按鈕上方的交互標(biāo)識(shí)符,打開(kāi)properties:response對(duì)話框。
(17) 單擊response標(biāo)簽,打開(kāi)response選項(xiàng)卡。
(18) 啟用scope選項(xiàng)組中的perpetual復(fù)選框。
(19) 打開(kāi)branch下拉列表框,選擇exit interaction。
(20) 單擊ok按鈕。
(21) 將計(jì)算圖標(biāo)拖動(dòng)到“開(kāi)始”圖標(biāo)的右側(cè),并命名為“退出”。
(22) 雙擊“退出”圖標(biāo),打開(kāi)計(jì)算圖標(biāo)的編輯窗口。
(23) 在編輯窗口內(nèi)輸入quit (1)。
(24) 關(guān)閉編輯窗口之后,得到如圖9-19所示課件的流程圖。
(25) 將交互圖標(biāo)拖動(dòng)到“按鍵”圖標(biāo)的下方,命名為“應(yīng)答”。
(26) 將顯示圖標(biāo)拖動(dòng)到“應(yīng)答”圖標(biāo)的右下方,打開(kāi)response type對(duì)話框。
(27) 選中keypress單選按鈕之后,單擊ok按鈕。
(28) 將顯示圖標(biāo)命名為“?”。
(29) 雙擊“?”圖標(biāo)上方的交互標(biāo)識(shí)符,打開(kāi)properties:response對(duì)話框。
(30) 單擊response標(biāo)簽,打開(kāi)response選項(xiàng)卡。
(31) 打開(kāi)erase下拉列表框,選擇don't erase選項(xiàng)。
(32) 打開(kāi)branch下拉列表框,選擇try again選項(xiàng)。
(33) 單擊ok按鈕,關(guān)閉打開(kāi)的properties:response對(duì)話框。
(34) 運(yùn)行課件,按住shift功能鍵之后,雙擊“?”圖標(biāo),使它處于編輯狀態(tài)。
(35) 在演示窗口內(nèi)輸入“你在鍵盤(pán)上輸入的鍵名是{key}”(如圖9-20所示)。
圖9-19 課件的流程圖 圖9-20 編輯“?”圖標(biāo)
(36) 將“?”圖標(biāo)的內(nèi)容設(shè)置為透明。
(37) 播放、測(cè)試并保存課件,得到如圖9-21所示的課件流程圖。
由于將“提示”及“?”圖標(biāo)的內(nèi)容都設(shè)置為透明,這樣無(wú)論是“請(qǐng)按任意鍵”,還是“你在鍵盤(pán)上輸入的鍵名是”及其內(nèi)容下方的背景中都能夠顯示出來(lái),如圖9-22所示。
圖9-21 課件流程圖 圖9-22 輸入按鍵示例
新聞熱點(diǎn)
疑難解答