国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > 媒體動畫 > 正文

Authorware開發(fā)實例:authorware6實際示例8 程序地設(shè)計和調(diào)整測試靈活技術(shù)

2024-09-08 19:26:14
字體:
供稿:網(wǎng)友

 主要內(nèi)容

    在多媒體交互作用程序的編制過程和程序設(shè)計完成后,都需要對程序的各模塊和整個程序進行調(diào)試。根據(jù)用戶的需求和編程人員的表現(xiàn)目的來對程序中的錯誤和不合理的地方進行修改調(diào)整。
    程序的調(diào)試是一個交互作用應(yīng)用程序設(shè)計中的重要一環(huán)。在程序的調(diào)試過程中,調(diào)試人員要模擬用戶的各種狀態(tài),輸入不同的內(nèi)容和動作,來測試程序的健壯性和使用的靈活性、便利性。如果最終用戶對程序的使用方法非常模糊、甚至某些誤操作會導(dǎo)致整個軟件系統(tǒng)的崩潰,這些都標志著該應(yīng)用程序的失敗。
    所以,我們在程序的編制過程中,要全面地測試各程序模塊實現(xiàn)的功能和與其它模塊之間的通信暢通與正確,還有對用戶誤操作的預(yù)防和處理。
    在程序的編制過程中,編程人員需要隨時觀察程序的效果,在大多數(shù)傳統(tǒng)的編程語言中,編程人員要耗費大量的時間用到對源程序的編譯和連接上,最終目的僅僅是為了看一看一個小小的改動對程序的影響。這種將大量的時間耗費在重復(fù)的編譯連接上是非常無意義的。
    多媒體的開發(fā)靠的是對圖形和動畫的精心組織、交互結(jié)構(gòu)的精心設(shè)計和多種媒體的結(jié)合使用。媒體和動畫都有很大的時效性,對于一個多媒體程序,開發(fā)的時間越短,其時效性就越好。如果將大量的時間耗費在程序的編制和調(diào)試上,多媒體產(chǎn)品開發(fā)周期不斷拉長,則對多媒體產(chǎn)品的損失就越大。
    authorware為開發(fā)人員提供了豐富的調(diào)試工具和檢測工具。在傳統(tǒng)的編程工具中,如果開發(fā)人員希望對程序中間的某一部分修改來看看修改的結(jié)果,必須無數(shù)次執(zhí)行程序前一段的無意義內(nèi)容才能夠看到所修改的結(jié)果。而使用authorware編程,開發(fā)人員可以執(zhí)行程序流程線上任一部分的內(nèi)容,無需執(zhí)行前一段或后一段的內(nèi)容,單獨執(zhí)行修改過的內(nèi)容即可。
    authorware實現(xiàn)的多媒體編程的完全可視化,開發(fā)人員可以在設(shè)計窗口的流程線上控制和觀察程序的流程,不同的設(shè)計按鈕來完成不同的功能,豐富的函數(shù)和變量為authorware程序設(shè)計提供了廣闊的舞臺。

    在該部分內(nèi)容中讓我們學(xué)習(xí)authorware為開發(fā)人員提供的靈活的設(shè)計和調(diào)試程序的工具。主要有以下內(nèi)容:
    (1) 【start】(開始)和【end】(停止)旗幟的使用:開始和停止旗幟可以放置到程序流程線上的任意位置,用來控制程序的執(zhí)行起始位置和停止位置。使用這兩個旗幟,開發(fā)人員可以執(zhí)行整個應(yīng)用程序的一部分。
    (2) authorware的跟蹤窗口:authorware的跟蹤窗口可以用來跟蹤哪些設(shè)計按鈕正在執(zhí)行和監(jiān)控變量設(shè)置的值等。在使用跟蹤窗口前,讀者必須首先熟悉如下內(nèi)容:
    ① step over:單步特性。
    ② step into:進入特性。
    ③ reset:重置特性。
    ④ resume/pause:暫停和恢復(fù)特性。
    ⑤ 對跟蹤窗口中產(chǎn)生信息的含義進行學(xué)習(xí)。

 實例過程

步驟1 兩種旗幟介紹
    在設(shè)計按鈕調(diào)色板中有兩個可以在設(shè)計中使用的旗幟:
    (1) 【start】(開始)旗幟如圖8-1所示,它可以用于在流程線上建立一個執(zhí)行點。

圖8-1 程序從【開始】旗幟所在處執(zhí)行

    如果在【control】菜單中選擇“restart from flag”命令或使用快捷鍵“ctrl+alt+r”來執(zhí)行程序時,則程序從【開始】旗幟所在處執(zhí)行,而不是從流程線上程序的起點開始執(zhí)行。在開始旗幟的輔助下,讀者可以連續(xù)地執(zhí)行作品中的一小部分,而不必每次都從程序的開始執(zhí)行。這在程序的開發(fā)過程中對部分內(nèi)容的調(diào)試有很大幫助。如果每一次調(diào)試都從頭開始運行作品,則要花費大量的時間來運行到修改的點。

技巧:
    在一般情況下,我們在程序的開始要設(shè)置一些變量,這些變量要控制程序中的相關(guān)內(nèi)容。例如激活菜單或匹配響應(yīng)等。但是,如果程序是從【開始】旗幟所在處開始執(zhí)行的話,則程序就不能執(zhí)行變量的設(shè)置,這樣的話,就有可能對程序的控制失控。為了解決這個問題,讀者可以在【開始】旗幟后使用一個【運算】設(shè)計按鈕,將變量的值臨時設(shè)置在該【運算】設(shè)計按鈕內(nèi)。一旦程序的調(diào)試完畢,請將該【運算】設(shè)計按鈕刪除掉,以免程序出現(xiàn)混亂。
    (2) 【end】(停止)旗幟。如圖8-2所示,用于在程序的設(shè)計流程線上停止作品的執(zhí)行。

圖8-2 程序運行到【停止】旗幟所在位置停止運行

    當執(zhí)行到程序的流程線上的【停止】旗幟后,則authorware停止應(yīng)用程序的執(zhí)行。這同【等待】設(shè)計按鈕的功能類似,不同之處是沒有活動的【continue】按鈕。【等待】設(shè)計按鈕單擊【continue】按鈕可以繼續(xù)執(zhí)行程序,而【停止】旗幟需要執(zhí)行authorware中【control】菜單中的【play】命令來繼續(xù)執(zhí)行應(yīng)用程序。
    與【開始】旗幟類似,【停止】旗幟也可以用來控制執(zhí)行程序的一部分。在程序的開發(fā)設(shè)計過程中,我們可以使用該工具來保證我們在編輯某一設(shè)計按鈕之前不運行后面的設(shè)計按鈕或設(shè)計按鈕組。例如在程序中,有一個對象需要在【顯示】設(shè)計按鈕中顯示,同時要使用【移位】設(shè)計按鈕使該顯示對象在展示窗口上按照一定的方式移動。
    在該程序中,為了在【顯示】設(shè)計按鈕中定位顯示對象的位置,而不希望執(zhí)行下面的【移位】設(shè)計按鈕,我們可以在【移位】設(shè)計按鈕前設(shè)置一個【停止】旗幟,當程序執(zhí)行到【顯示】設(shè)計按鈕后,停止程序的執(zhí)行,這時我們可以對展示窗口中的顯示對象進行調(diào)整和控制。對顯示對象調(diào)整好后,我們再去掉【停止】旗幟,重新運行程序來觀察運行的結(jié)果。

注意:
    【開始】旗幟和【停止】旗幟是authorware為程序設(shè)計時所提供的工具。無論讀者是否從流程線上去掉它們,當程序最終發(fā)行給用戶的時候,所有的旗幟將被忽略。

提示:
    在一個應(yīng)用程序的設(shè)計過程中,只能分別有一個【開始】旗幟和一個【停止】旗幟出現(xiàn)在程序的設(shè)計窗口中。

技巧:
    【等待】設(shè)計按鈕和【停止】旗幟的功能非常相似,在程序的設(shè)計調(diào)試過程中,我更喜歡使用【等待】設(shè)計按鈕,因為【等待】設(shè)計按鈕可以有【continue】命令按鈕,使程序的暫停比較明顯。

步驟2 程序設(shè)計中旗幟的應(yīng)用:
    在流程線上設(shè)置和移動旗幟和其它設(shè)計按鈕相同,不同的是在設(shè)計按鈕調(diào)色板上,旗幟設(shè)計按鈕各只有一個,其它的設(shè)計按鈕有無數(shù)多個。如果我們在設(shè)計窗口中放置了【開始】旗幟和【停止】旗幟,則設(shè)計按鈕調(diào)色板中這兩種旗幟的位置會出現(xiàn)空缺。如圖8-3所示。

圖8-3在程序設(shè)計中使用【停止】和【開始】旗幟

    使用【開始】旗幟和【停止】旗幟的步驟如下:
    (1) 用鼠標拖曳【開始】旗幟到程序流程線上需要程序開始執(zhí)行的位置。
    (2) 拖曳一個【停止】旗幟到程序流程線上需要暫停的位置點上。
    (3) 如果希望程序從【開始】旗幟所在位置執(zhí)行,使用【control】菜單中的【restart from flag】命令(快捷鍵為ctrl+alt+r),否則使用【control】菜單中的【restart】命令(快捷鍵為ctrl+r)。來運行程序
當一個應(yīng)用程序從【開始】旗幟所在處開始執(zhí)行程序后,authorware將清理展示窗口,并將所有的變量設(shè)初值,和作品從流程線上的起始點開始運行一樣。

技巧:
    程序的設(shè)計和編輯過程中,我們并不需要同時使用兩種旗幟,我們可以單獨使用【停止】旗幟和【開始】旗幟。使用【開始】旗幟來從特定的位置來開始執(zhí)行程序到末尾。可以使用【停止】旗幟來從最開始來執(zhí)行程序到停止位置。還可以同時使用兩種旗幟來設(shè)定執(zhí)行應(yīng)用程序的一部分。
    (4) 當authorware遇到【停止】旗幟停止執(zhí)行程序后,讀者可以回到流程線上進一步編輯流程線上的設(shè)計按鈕,也可以在展示窗口中編輯窗口中的顯示對象。在這兩種情況下,讀者都可以在編輯完成后,使用【control】菜單的【play】命令從程序停止處繼續(xù)執(zhí)行應(yīng)用程序。
    取消流程線上的【開始】旗幟和【停止】旗幟的方法如下:
    (1) 從設(shè)計窗口中將流程線上的【開始】旗幟或【停止】旗幟拖曳到設(shè)計按鈕調(diào)色板上它們的位置上。
    (2) 用鼠標單擊設(shè)計按鈕調(diào)色板上旗幟位置的空缺處,旗幟會自動從設(shè)計窗口流程線上取消。
    旗幟在流程線上位置改變的方法如下:      
    (1) 用鼠標拖動旗幟到需要的位置釋放即可。
    (2) 如果旗幟在程序的流程線上的某個位置,用戶不能很快地找到,用戶可以先使用上述方法(2)使旗幟回到調(diào)色板上,然后再拖動旗幟到流程線上合適的位置釋放。
    使用【開始】旗幟和【停止】旗幟進行程序的調(diào)試,方法如下:
    在程序的設(shè)計過程中,我們可以使用旗幟來調(diào)試程序,以便定位程序錯誤所在的位置。例如我們在程序的運行過程中發(fā)現(xiàn)作品的運行進程和我們設(shè)計的不一樣,或者在展示窗口中的顯示內(nèi)容同我們的期待內(nèi)容不同。如果出現(xiàn)上述情況,我們可以使用旗幟來定位問題的所在處。
    讀者可以首先使用【停止】旗幟,使程序定位在出現(xiàn)問題的位置,也就是,確定在【停止】旗幟位置前的程序部分引起的錯誤。然后使用【開始】旗幟來縮小錯誤的范圍,逐步進行,就可以將錯誤的范圍縮小到一個小的范圍,然后再使用跟蹤窗口來觀察這小范圍程序的執(zhí)行,從而,定位錯誤的原因,然后解決問題。
    在程序的運行過程中修改程序,方法如下:
    當我們使用【等待】設(shè)計按鈕或【停止】旗幟使應(yīng)用程序暫停運行后,我們有可能需要對程序中的某些內(nèi)容進行修改。下面我們來學(xué)習(xí)如何對不同的修改對象進行不同的操作,從而來修改程序中的對象。
    (1) 修改顯示在展示窗口中的正文或圖片:
    只需用鼠標雙擊需要修改的對象,此時,authorware的【圖形工具箱】便出現(xiàn)在展示窗口中,并且,該對象所屬的設(shè)計按鈕的圖標也出現(xiàn)在【圖形工具箱】左邊的區(qū)域中。利用【圖形工具箱】中的工具按鈕編輯對象,完成后,使用【control】菜單的【play】命令繼續(xù)執(zhí)行應(yīng)用程序。
    (2) 修改程序中的響應(yīng)類型:
    只需用鼠標雙擊流程線上的響應(yīng)類型圖標,彈出圖8-4所示的響應(yīng)分支屬性對話框,在該對話框中可以設(shè)置響應(yīng)的類型等多種選項和設(shè)置。然后單擊【ok】命令按鈕結(jié)束對該分支結(jié)構(gòu)的設(shè)置。使用【control】菜單的【play】命令繼續(xù)執(zhí)行應(yīng)用程序。

    (3) 修改【等待】設(shè)計按鈕屬性設(shè)置:
    首先選擇【control】菜單的【pause】命令,然后雙擊【等待】設(shè)計按鈕,彈出圖8-5所示的【等待】設(shè)計按鈕屬性對話框。在該對話框中設(shè)置【等待】設(shè)計按鈕的相關(guān)屬性,然后單擊【ok】關(guān)閉該對話框。
    (4) 修改【交互作用】設(shè)計按鈕中的熱區(qū)響應(yīng):

圖8-5【等待】設(shè)計按鈕對話框

    首先選擇【control】菜單的【pause】命令,然后雙擊要編輯的熱區(qū)對象,調(diào)整熱區(qū)的大小和在展示窗口中的位置,設(shè)置完畢后,選擇【control】菜單中的【play】命令繼續(xù)執(zhí)行。

技巧:
    如果當前內(nèi)容的是【交互作用】設(shè)計按鈕中的內(nèi)容,并且其中含有熱區(qū)或熱對象。要編輯這樣的對象,必須首先選擇【control】菜單的【pause】命令,然后用鼠標雙擊要編輯的熱對象或熱區(qū)。編輯完畢后,選擇【control】菜單中的【play】命令繼續(xù)執(zhí)行。
    以上內(nèi)容是使用【開始】旗幟和【停止】旗幟來調(diào)試和編輯程序的總體介紹,在今后實際的應(yīng)用中往往是上述各種方法的結(jié)合來進行程序的設(shè)計和調(diào)試。


 跟蹤窗口的使用

    前面我們學(xué)習(xí)了使用【開始】旗幟和【停止】旗幟來調(diào)試程序,來跟蹤程序的執(zhí)行流程。對于簡單應(yīng)用程序我們可以使用旗幟來定位錯誤的產(chǎn)生位置和程序的運行方向。對于authorware的可視化編程手段,簡單的程序流程我們還可以判斷并跟蹤。但對于采用復(fù)雜交互和復(fù)雜分支結(jié)構(gòu)的應(yīng)用程序,簡單地依靠authorware的可視化編程的便利來跟蹤程序的流程是遠遠不夠的,基于這個原因,authorware為用戶提供了一個功能窗口,即跟蹤窗口。提供跟蹤窗口的目的就是為了方便程序的調(diào)試。
    跟蹤窗口簡介:
    跟蹤窗口主要是用來顯示authorware在執(zhí)行程序的過程中所遇到的設(shè)計按鈕的相關(guān)信息。如果程序的分支結(jié)構(gòu)特別復(fù)雜,或者程序執(zhí)行得太快以至于我們很難看得清楚,此時跟蹤窗口將是我們能力的延伸,可以幫助我們來調(diào)試復(fù)雜的或運行很快的應(yīng)用程序。
    打開跟蹤窗口的方法是:
    選擇authorware中【window】菜單中的【control panel】命令(快捷鍵為ctrl+2),彈出圖8-6所示的控制面板。單擊控制面板最右邊的【trace】命令按鈕彈出圖8-7所示的跟蹤窗口(trace 窗口)。

圖8-6 控制面板

圖8-6 控制面板

    跟蹤窗口和控制面板連接在一起成為組合窗口,該組合窗口是一個浮動窗口,可以用鼠標調(diào)整到屏幕的任意位置,也可以象改變其它windows 窗口一樣通過拖曳窗口的四邊和四角來任意改變窗口的大小。
    當我們沿程序流程線來跟蹤authorware作品時,將會遇到【等待】設(shè)計按鈕、【交互作用】設(shè)計按鈕、【框架】設(shè)計按鈕等需要用戶輸入交互響應(yīng)的設(shè)計按鈕。該跟蹤窗口會自動停下來,等候用戶與程序的對話,然后從該處繼續(xù)執(zhí)行跟蹤任務(wù)。
    在跟蹤窗口有六個功能按鈕,下面請讀者來逐步學(xué)習(xí)這六個功能按鈕在跟蹤窗口中的作用。如圖8-8所示。

圖8-8 跟蹤窗口功能按鈕

    (1) 從【開始】旗幟處重新開始(restart from flag):使用該功能按鈕,跟蹤窗口將從程序流程線上的【開始】旗幟所在位置重新開始跟蹤。

提示:
    快捷鍵為ctrl+alt+r。
    (2) 從【開始】旗幟重新設(shè)置跟蹤窗口(reset to flag):如果【開始】旗幟已經(jīng)放置到流程線上,則單擊該功能按鈕,跟蹤窗口便從【開始】旗幟處重置跟蹤。
    (3) 單步跟蹤(step over):如果是一個分支結(jié)構(gòu)或者是一個【映像】設(shè)計按鈕,則單擊該按鈕,authorware將執(zhí)行分支結(jié)構(gòu)或【映像】設(shè)計按鈕中的所有對象,而不是一個設(shè)計按鈕一個設(shè)計按鈕地執(zhí)行。在使用該功能按鈕時,在跟蹤窗口只顯示【映像】設(shè)計按鈕的圖標,以及包含【映像】設(shè)計按鈕名和進入、退出該【映像】設(shè)計按鈕記錄的信息列表。

提示:
    單步跟蹤功能在調(diào)試中,有助于接近問題的所在。快捷鍵為ctrl+alt+dnarrow。
    (4) 進入跟蹤(step into):該功能按鈕用于在流程線上更精確的跟蹤,如果是一個分支結(jié)構(gòu)或者是一個【映像】設(shè)計按鈕,單擊該按鈕,則authorware將進入分支結(jié)構(gòu)或【映像】設(shè)計按鈕中,一個設(shè)計按鈕一個設(shè)計按鈕地執(zhí)行。在使用該功能按鈕時,跟蹤窗口會顯示所有設(shè)計按鈕的信息。

提示:
    進入跟蹤功能在程序的調(diào)試中有助于發(fā)現(xiàn)問題的所在。快捷鍵為ctrl+alt+rtarrow。
    (5) 跟蹤開關(guān)(trace on/off):該功能按鈕控制跟蹤信息的顯示與否,即使是在跟蹤的時候,該功能按鈕仍然可用。在調(diào)試的過程中,我們可能只對某一部分的信息有興趣,則可以將該按鈕關(guān)上,關(guān)閉跟蹤信息。事實上,筆者建議讀者將該功能按鈕一直打開,又不會影響程序的執(zhí)行效果,信息當然是越多越好。還是讓跟蹤窗口打開的好。

圖8-9 【control】下拉菜單和跟蹤窗口以及控制面板

    (6) 顯示不可見的信息(show invisible items):在該功能按鈕打開的情況下,程序在展示窗口上可以顯示某些不能顯示的內(nèi)容,例如目標區(qū)等。當該按鈕關(guān)閉時,程序不顯示這些不可見的內(nèi)容。
    上述控制面板和跟蹤窗口功能按鈕的功能我們可以在authorware中【control】下拉菜單(如圖8-9所示)中找到相應(yīng)的命令選項。我們在程序的調(diào)試過程中,既可以使用控制面板上的功能按鈕,也可以使用菜單命令,還可以使用快捷鍵。作為一個專業(yè)的編程人員,筆者建議讀者將各功能按鈕的快捷鍵多加熟悉。在編程和調(diào)試過程中,讀者會發(fā)現(xiàn),熟練地使用快捷鍵會大大的節(jié)省時間,提高程序設(shè)計的效率。
    在跟蹤窗口中,跟蹤窗口的六個功能按鈕下是將要執(zhí)行的設(shè)計按鈕的圖標,包括該設(shè)計按鈕的名稱,如圖8-10所示。

圖8-10 跟蹤窗口信息

    在圖8-10所示的窗口中,功能按鈕下為將要執(zhí)行的設(shè)計按鈕的圖標和名稱,讀者可以根據(jù)該區(qū)域的內(nèi)容來判斷當前程序執(zhí)行到流程線上的位置。
    圖8-10最下方的區(qū)域是已經(jīng)執(zhí)行過的設(shè)計按鈕的信息,該信息格式如圖8-10所示:“1:dis:靶子”。
    信息的通用格式為:number:“class”:“title”,下面讓我們來介紹各符號的含義:
    (1) number:該符號代表的是設(shè)計按鈕在程序流程線上的級別。最先的流程線級別為“1”。通過該信息,我們可以定位該設(shè)計按鈕在流程線上的層次。

注意:
    當設(shè)計按鈕包含在流程線上的【映射】設(shè)計按鈕中的時候,就產(chǎn)生了流程線級別的概念,例如:如果一個【映射】設(shè)計按鈕在最初的設(shè)計窗口流程線上,則該【映射】設(shè)計按鈕的流程線級別為1級,而包含在該【映射】設(shè)計按鈕內(nèi)的設(shè)計按鈕的流程線級別為2級。依次類推。
    (2) “class”:該符號顯示的是該設(shè)計按鈕所屬的類別,這一類別是設(shè)計按鈕的縮寫。
    表8-1為authorware中所有設(shè)計按鈕類型名稱及其縮寫。

表8-1 設(shè)計按鈕類型及其在跟蹤窗口中的縮寫

設(shè)計按鈕類型名稱

設(shè)計按鈕類型縮寫

disply【顯示】設(shè)計按鈕

dis

motion【移位】設(shè)計按鈕

mtn

erase【擦除】設(shè)計按鈕

ers

wait【等待】設(shè)計按鈕

wat

navigate【定向】設(shè)計按鈕

nav

framework【框架】設(shè)計按鈕

frm

decision【判定】設(shè)計按鈕

des

interaction【交互作用】設(shè)計按鈕

int

calculation【運算】設(shè)計按鈕

clc

map【映射】設(shè)計按鈕

map

digital movie【數(shù)字化電影】設(shè)計按鈕

mov

sound【聲音】設(shè)計按鈕

snd

anolog video【模擬視頻】設(shè)計按鈕

vod

圖8-11 進入或退出跟蹤信息說明

    (3) “title”:該符號顯示的是設(shè)計按鈕的標題。在前面的學(xué)習(xí)中我們強調(diào)過給設(shè)計按鈕一個描述性標題的重要性,通過設(shè)計按鈕的標題,不僅可以用來注釋流程線,而且對跟蹤窗口也是非常有幫助的。用各設(shè)計按鈕有效的描述性標題,我們可以更有效地利用跟蹤窗口。
關(guān)于enter/exit(進入和退出)跟蹤信息的說明:
讓我們以一個實例來理解該內(nèi)容,如圖8-11所示。
    讀者可以在【進入或退出跟蹤信息】中看到如下內(nèi)容:
        1:int:輸入目標0-100(enter)
        1:clc:
        1:int:輸入目標0-100(exit)
    請讀者對照圖8-12中的程序流程結(jié)構(gòu),我們可以看到:

圖8-12原程序的邏輯結(jié)構(gòu)

    第一條信息對應(yīng)于進入標題為“輸入目標0-100”的【交互作用】設(shè)計按鈕,所以在第四個區(qū)域有信息“(enter)”。
    第二條信息對應(yīng)于“輸入目標0-100”的【交互作用】設(shè)計按鈕分支結(jié)構(gòu)中的【運算】設(shè)計按鈕。
    第三條信息對應(yīng)于退出標題為“輸入目標0-100”的【交互作用】設(shè)計按鈕,所以在第四個區(qū)域有信息“(exit)”。
    由此可見,進入或退出信息表示程序流程是進入還是退出【映射】設(shè)計按鈕或【交互作用】設(shè)計按鈕等具有分支結(jié)構(gòu)的設(shè)計按鈕結(jié)構(gòu)中。
    使用跟蹤變量來跟蹤管理變量:
    跟蹤窗口并非僅僅能跟蹤authorware執(zhí)行到流程線上的位置,還可以用來跟蹤應(yīng)用程序中變量的值,跟蹤變量的過程比跟蹤設(shè)計按鈕的過程要復(fù)雜得多。但是,在實際的程序設(shè)計和調(diào)試過程中,由于變量的賦值而產(chǎn)生的錯誤是導(dǎo)致程序錯誤一大主要原因,所以,我們在程序的調(diào)試過程中要注意變量的賦值。
    為了說明如何使用跟蹤窗口在authorware的應(yīng)用程序運行時跟蹤變量的值,我們以實例2中的程序為原型來說明該問題。
    在實例2中,程序的邏輯結(jié)構(gòu)如圖8-12所示:
    在該實例中,我們引入了自定義變量p,p變量的值是通過【交互作用】分支結(jié)構(gòu)中的正文輸入響應(yīng)讓用戶輸入數(shù)值,然后通過一個【運算】設(shè)計按鈕賦值給變量p。我們可以在跟蹤窗口中跟蹤該變量在程序執(zhí)行過程中的賦值內(nèi)容。
    為了實現(xiàn)該功能,我們需要在源程序上加上某些內(nèi)容:

提示:
    所添加的內(nèi)容對源應(yīng)用程序的運行和效果沒有任何影響。
    為了實現(xiàn)在跟蹤窗口中跟蹤指定的變量的值,我們首先要知道,跟蹤窗口并非要檢測和顯示所有應(yīng)用程序中的變量,跟蹤窗口只顯示開發(fā)人員指定的變量的信息,如何來指定要檢測的變量呢?
    在學(xué)習(xí)如何實現(xiàn)該功能之前,請讀者學(xué)習(xí)一個函數(shù)trace函數(shù):
    函數(shù)的語法格式:trace("string");
    該函數(shù)的作用就是使用該函數(shù)將需要在跟蹤窗口中顯示的變量值在跟蹤窗口中顯示出來。使用的方法是:在程序設(shè)計人員預(yù)期要發(fā)生變量值變化的地方,放置一個【運算】設(shè)計按鈕,在【運算】設(shè)計按鈕對話框中輸入trace函數(shù),則當應(yīng)用程序運行到該設(shè)計按鈕后,authorware不會對程序結(jié)果產(chǎn)生任何影響,只是將該trace中的變量值的信息在跟蹤窗口中顯示出來。在跟蹤窗口中顯示的變量值形式為:
        --45
    在連續(xù)兩個連詞符后是變量的值。
    該實例具體的實現(xiàn)過程如下所述:
    (1) 如圖8-13所示,在原型程序的基礎(chǔ)上,在我們預(yù)期變量值要改變的兩個地方分別加上了兩個【運算】設(shè)計按鈕。

圖8-13 在原型程序流程線上添加跟蹤變量的【運算】設(shè)計按鈕

    因為我們要監(jiān)測變量p的值,則我們在兩個【運算】設(shè)計按鈕中輸入相同的內(nèi)容,輸入內(nèi)容如圖8-14所示。

圖8-14 【運算】設(shè)計按鈕的輸入內(nèi)容

    (2) 運行該程序,讀者可以在展示窗口中輸入目標值,然后繼續(xù)運行。讀者可以看到在跟蹤窗口中,該變量的值出現(xiàn)了兩次,如圖8-15所示。

    我們設(shè)置了兩個內(nèi)容為trace函數(shù)的【運算】設(shè)計按鈕,所以在跟蹤窗口中,變量p的值出現(xiàn)了兩次。

提示:
    authorware不象c語言等編程語言,可以動態(tài)地監(jiān)測變量的值,所以我們要在跟蹤窗口中監(jiān)測變量的值,需要首先預(yù)測變量值有可能變化的地方,然后在變化的位置設(shè)置一個內(nèi)容為trace函數(shù)的【運算】設(shè)計按鈕,從而可以在跟蹤窗口中顯示一次變量的值。要想多次跟蹤該變量,必須設(shè)置多個【運算】設(shè)計按鈕。
    變量值前以兩個連字符來表示是變量值。
    另外一種監(jiān)測變量值的方法:
    使用disply【顯示】設(shè)計按鈕來顯示變量的值。使用該方法可以在展示窗口中動態(tài)地監(jiān)測變量的值的變化。
    將變量名嵌入到【顯示】設(shè)計按鈕中。具體的步驟如下:
    (1) 在流程線上你想在執(zhí)行作品的位置前面插入一個【顯示】設(shè)計按鈕。如果讀者要從起點運行應(yīng)用程序,則需要將該【顯示】設(shè)計按鈕放置到流程線的頂端。如果讀者想從一個【開始】旗幟來開始運行,則要把【顯示】設(shè)計按鈕放置到【開始】旗幟所在位置之下。
    在該實例中,我們將【顯示】設(shè)計按鈕放置到流程線的頂端,命名為“監(jiān)測變量”。
    (2) 雙擊打開該【顯示】設(shè)計按鈕,在【顯示】設(shè)計按鈕中插入變量名。在該實例中我們插入“目標{p}”,如圖8-16所示。

圖8-16 【顯示】設(shè)計按鈕中插入變量

    (3) 選擇authorware中【modify】菜單中【icon】級聯(lián)菜單中的【properties】命令選項,彈出圖8-17所示的【properties】對話框(為了加快速度,讀者可以使用快捷鍵ctrl+r)。

圖8-17 【顯示】設(shè)計按鈕屬性對話框

    (4) 在圖8-17對話框中選擇圖示的【option】選項列表中的【updated displayed variables】選項。
    (5) 為了使該變量的顯示內(nèi)容一直顯現(xiàn)在展示窗口中,我們在該對話框中的【layer】正文輸入框中輸入在該應(yīng)用程序中最高級別的層級。我們輸入層級6。則在程序的運行過程中,該變量的變化的值會一直顯示在展示窗口中,除非用【擦除】設(shè)計按鈕來擦除。
    (6) 請讀者運行程序來看一看運行的效果,如圖8-18所示。在程序運行的展示窗口中永遠顯示出變量p的值,而且該變量顯示的值隨變量值的變化而實時變化。

圖8-18 程序的運行結(jié)果

提示:
    在程序的調(diào)試過程中,筆者認為使用在【顯示】設(shè)計按鈕中插入變量來監(jiān)測變量的值是最方便的,我們可以隨時監(jiān)控變量值的變化,而不用象使用跟蹤窗口一樣來預(yù)測值的變化,然后再插入【運算】設(shè)計按鈕。使用該方法,當程序調(diào)試結(jié)束后,僅需要刪除一個【顯示】設(shè)計按鈕即可。
    使用該方法,我們不僅可以通過名稱跟蹤不止一個變量,而且不需要記住跟蹤變量的順序。
    綜上所述,在程序的調(diào)試過程中,使用在【顯示】設(shè)計按鈕中插入變量來監(jiān)控變量的值是最方便和靈活的方法。

 練習(xí)

    (1) 使用變量對話框來觀察變量的當前值和初始值。
    (2) 用程序的調(diào)試技巧,調(diào)試實例1中的程序,觀察該程序的游戲過程。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 抚远县| 大洼县| 红原县| 读书| 三门县| 台湾省| 哈巴河县| 搜索| 塔城市| 玉溪市| 化隆| 宣汉县| 萍乡市| 嘉义县| 铁岭县| 霞浦县| 鄂州市| 宜良县| 灌云县| 江山市| 乳山市| 泸州市| 子洲县| 安宁市| 定陶县| 东丰县| 台北市| 通许县| 定西市| 元谋县| 徐水县| 新津县| 婺源县| 石泉县| 吉林省| 寻乌县| 平定县| 唐海县| 黄骅市| 临高县| 竹溪县|