決策圖標(biāo)又稱為判斷圖標(biāo),可用來實(shí)現(xiàn)流程的分支、循環(huán),它的形狀為菱形。通過if…then…else的方式可以改變在課件內(nèi)新的流程分支,通過它們的嵌套,還可以實(shí)現(xiàn)多元分支,但使用決策圖標(biāo)實(shí)現(xiàn)多元分支時,程序結(jié)構(gòu)清晰、易于理解,這是前者無法比擬的。
決策圖標(biāo)及其路徑如圖11-6所示,與交互圖標(biāo)非常類似。每一個決策圖標(biāo)上都附著數(shù)量不等的分支路徑,由于決策圖標(biāo)的自動性,因此authorware 6.0將根據(jù)決策圖標(biāo)當(dāng)時的設(shè)置情況自動地選擇某一分支運(yùn)行,而交互圖標(biāo)是根據(jù)用戶的交互響應(yīng)來決定程序的分支的。
需要創(chuàng)建決策路徑時,可直接將結(jié)果圖標(biāo)拖動到?jīng)Q策圖標(biāo)的右側(cè),釋放鼠標(biāo)之后,一個新的分支路徑將出現(xiàn)在流程圖窗口。重復(fù)上述步驟,可為決策圖標(biāo)添加多條分支路徑。雙擊決策圖標(biāo)時,將打開如圖10-7所示的properties:decision icon對話框。
圖11-7 properties:decision icon對話框
time limit文本框用于確定決策結(jié)果花費(fèi)的時間,用戶可在此輸入數(shù)值、變量或表達(dá)式。當(dāng)?shù)竭_(dá)規(guī)定的時間內(nèi),authorware 6.0將中斷當(dāng)前的進(jìn)程,退出決策結(jié)構(gòu),開始執(zhí)行決策圖標(biāo)下方的圖標(biāo)。
啟用show time remaining復(fù)選框之后,將在演示窗口內(nèi)通過時鐘顯示當(dāng)前剩余決策的時間。只有在time limit文本框內(nèi)輸入數(shù)值之后,該復(fù)選框才能生效。
repeat下拉列表框用于確定authorware 6.0將在決策圖標(biāo)中重復(fù)執(zhí)行的次數(shù)。選擇fixed number of times時,下拉列表框下方的文本框?qū)⒈辉试S使用,用戶可在其中輸入數(shù)值、變量或表達(dá)式,authorware 6.0將根據(jù)該項(xiàng)的設(shè)置決定重復(fù)執(zhí)行的次數(shù)。特殊情況是,如果輸入的數(shù)值小于1,那么authorware 6.0將不會執(zhí)行任何分支,而是直接退出決策結(jié)構(gòu),執(zhí)行決策圖標(biāo)后面的圖標(biāo)。
在repeat下拉列表框內(nèi)選擇until all paths used選項(xiàng)時,所有的分支路徑至少執(zhí)行一遍之后才退出決策結(jié)構(gòu)。此時,repeat下方的文本框處于禁用狀態(tài)。選擇until click/keypress時,直到單擊鼠標(biāo)或按下鍵盤之后,才退出決策結(jié)構(gòu)。此時,repeat下方的文本框處于禁用狀態(tài)。
在repeat下拉列表框內(nèi),選擇until true選項(xiàng)時,repeat下方的文本框?qū)⒈辉试S使用,用戶可在文本框內(nèi)輸入數(shù)值、變量或表達(dá)式,在每次執(zhí)行決策圖標(biāo)時,authorware 6.0都將先判斷是否為真,只要變量或表達(dá)式的值為假,將反復(fù)執(zhí)行決策結(jié)構(gòu)的各分支。當(dāng)變量或表達(dá)式的值為真時,authorware 6.0則退出決策結(jié)構(gòu)。
在repeat下拉列表框內(nèi),選擇don't repeat選項(xiàng)時,authorware 6.0將根據(jù)branch下拉列表框的選項(xiàng)選擇執(zhí)行其中的一個分支流程,然后退出決策結(jié)構(gòu)。don't repeat是authorware 6.0的默認(rèn)選項(xiàng),此時repeat下方的文本框處于禁用狀態(tài)。
branch下拉列表框用于決定authorware 6.0執(zhí)行決策圖標(biāo)各分支路徑的方法。選擇sequentially時,authorware 6.0將按照從左到右的順序,在第一次遇到?jīng)Q策圖標(biāo)時執(zhí)行第一個分支路徑,在第二次遇到?jīng)Q策圖標(biāo)時執(zhí)行第二個分支路徑,依次類推。sequentially是authorware 6.0的默認(rèn)選項(xiàng),此時branch下方的文本框處于禁用狀態(tài)。
選擇randomly to any path時,當(dāng)authorware 6.0遇到?jīng)Q策圖標(biāo)時,將隨機(jī)地選擇某一個分支來執(zhí)行,這可能造成某一分支被反復(fù)執(zhí)行,而有些分支很少執(zhí)行的情況。此時,branch下方的文本框處于禁用狀態(tài)。
選擇randomly to unused path時authorware 6.0將在沒有執(zhí)行過的分支中進(jìn)行隨機(jī)選擇。如果一個曾經(jīng)得到執(zhí)行,那么authorware 6.0現(xiàn)將遇到該決策圖標(biāo)時,就不會選擇已經(jīng)執(zhí)行過的分支。只有在所有分支都執(zhí)行一遍之后,authorware 6.0才有可能第二次執(zhí)行某個分支路徑。此時,branch下方的文本框處于禁用狀態(tài)。
選擇to calculated path時,branch下方的文本框?qū)⑻幱谟行顟B(tài),用戶可在此輸入一個變量或表達(dá)式。當(dāng)authorware 6.0遇到?jīng)Q策圖標(biāo)時,將根據(jù)輸入的變量或表達(dá)式?jīng)Q定執(zhí)行的分支路徑。變量或表達(dá)式的數(shù)值就是分支的序列號。
啟動reset paths on entry復(fù)選框之后,將會重新設(shè)置那些與authorware 6.0已經(jīng)執(zhí)行過路徑相關(guān)的值,相當(dāng)于對分支路徑進(jìn)行初始化。如果在branch文本框中選擇了sequentially或randomly to unused path選項(xiàng),則重新設(shè)置路徑值將會對它們產(chǎn)生影響,因?yàn)榇藭rauthorware 6.0會跟蹤記錄已經(jīng)執(zhí)行過的路徑,如果重新設(shè)置了路徑值,則authorware 6.0將會消除所有已經(jīng)執(zhí)行過的路徑的相關(guān)信息。
在決策結(jié)構(gòu)中,不僅決策圖標(biāo)具有屬性,決策路徑也具有屬性。雙擊決策分支的標(biāo)識符,或者選擇某個分支圖標(biāo),然后使用modify,icons或decision path,都能夠打開分支的屬性設(shè)置對話框(如圖11-8所示)。
圖11-8 決策分支的屬性設(shè)置對話框
erase contents下拉列表框用于設(shè)置擦除的時機(jī),選擇before next selection時,只將執(zhí)行決策圖標(biāo)時,才擦除當(dāng)前分支的內(nèi)容。選擇upon exit時,表示在退出決策結(jié)構(gòu)時,才擦除當(dāng)前分支的內(nèi)容。選擇don't erase時,將始終保持當(dāng)前屏幕上的分支內(nèi)容,除非使用一個擦除圖標(biāo)將它們擦除。
啟用pause before branching復(fù)選框之后,當(dāng)退出分支路徑上的結(jié)果圖標(biāo)時,authorware 6.0將首先顯示出一個等待按鈕,單擊該按鈕之后,程序才會繼續(xù)往下執(zhí)行。
為了計算從1到100進(jìn)行累加的結(jié)果,我們可以采用順序分支的方法。在決策圖標(biāo)的屬性對話框內(nèi)將累加次數(shù)控制為100次,并使用顯示圖標(biāo)及時給出當(dāng)前的累加結(jié)果。為了控制顯示的時間,可在顯示圖標(biāo)的后面添加一個等待圖標(biāo)。
累加自然數(shù)
(1) 單擊new按鈕,新建一個課件文件。
(2) 將計算圖標(biāo)拖動到流程線的頂端,并命名為“初始化”。
(3) 雙擊打開“初始化”圖標(biāo)的編輯窗口,在其中輸入如圖11-9所示的內(nèi)容。
(4) 關(guān)閉編輯窗口之后,將連續(xù)打開2個new variable對話框。
(5) 單擊ok按鈕,關(guān)閉打開的new variable對話框。
(6) 將顯示圖標(biāo)拖動到“初始化”圖標(biāo)的下方,并命名為“背景”。
(7) 雙擊“背景”圖標(biāo),打開演示窗口。
(8) 在演示窗口內(nèi)導(dǎo)入如圖11-10所示的背景圖片。
圖11-9 編輯“初始化”圖標(biāo)的內(nèi)容 圖11-10 背景圖片
新聞熱點(diǎn)
疑難解答