最近學習了MFC一些比較基礎的知識,所以打算通過做一個簡單的數字游戲來理解MFC的流程並進一步熟悉其操作。
在這里,我做了一個猜數字的小游戲。第一步當然是設計主界面,先給大家展示一下游戲界面:
主界面:
從這個主界面可以看到,它包含標題,菜單欄,工具欄。
標題是給人一個認識,這是什么游戲,標題設置為:“猜數游戲”;
而菜單欄和工具欄才是游戲的核心,它要保證能夠完成游戲的基本功能。
菜單欄和工具欄是對應的,包含了”start“,"help","restart"這三個菜單響應。很明顯”start“和"restart"這兩個實現的是”開始游戲“和”重新開始游戲“;help是描述游戲規則。
點擊”help“或者帶有藍色問號的圖標,即可以讀取關於游戲的信息,在這里我采用的是顯示對話框來表達:
對話框顯示猜數字游戲的規則,即輸入四個不重復的數字,點確定按鈕后結果顯示在輸出結果中。
輸入的四位數中,位置和數字都正確為A,數字相同而位置不同的為B。如果九次仍未猜中,則游戲結束。
點擊確定后回到主界面。
所以,現在最主要的是"start"要實現游戲的功能,我們可以先自己在紙上設計游戲開始界面的大致模式。這個模式主要是指:游戲的輸入參數,游戲的輸出參數等等。
在這個過程中,我是根據需要實現的功能,先用C語言完成並進行測試。然后根據程序中的參數,自己設計一個比較清晰,便於用戶操作的游戲開始界面。
根據對話框中的一些靜態文本提示,可以知道我們只需要在”輸入四位數:“后的文本框中輸入四個不重復的數;點擊“確定”按鈕后,其他文本框會根據編好程序的運行結果進行顯示。
記得在做測試時,一定要考慮所有可能出現的情況:如用戶本身輸入的四位數有重復,我們要提示他重新輸入,即顯示下面的畫面:
現在來分析游戲的輸出參數有:”輸出結果“----描述格式為*A*B,如游戲規則中描述的;
”嘗試次數“---代表猜的次數,因為游戲中最多限9次,這有提醒用戶的作用,也從一定程度上反映用戶的能力;
”游戲耗時“可以作為游戲水平的另一個指標”;
”正確答案“---有些用戶玩到一半不想繼續,或者游戲失敗后,想看正確答案,則只需點擊該按鈕;
“歷史記錄”---是記錄猜過的數以及與其對應的輸出結果。
當然這個正確答案是由程序隨機產生的,每次產生有不一樣,且四位數是不重復的。
接下來,我們就嘗試玩一下這個游戲,順便測試游戲成功或者失敗后有什么指標可以參考:
可以看出,歷史記錄中會記錄每次輸入的四位數以及它們的結果,目前嘗試的次數為9,用時47s,但是還沒有猜出來,則顯示“很遺憾游戲失敗!”對話框。
而現在這個操作,顯示出“4A0B”即為成功,嘗試次數為3,用時15s,並提示“祝賀你成功了!”。
如果你想繼續玩,則點擊“restart”,又可以重新游戲。
總而言之,這個游戲是比較簡單的,涉及到MFC的菜單欄,工具欄,對話框,文字輸出以及一些控件處理,當然還有一些地方做的不是很完美或者還有其他的功能沒有,
但是關鍵在於掌握一個比較完整的MFC流程,以及在實現過程中各個模塊的整合與一些細節處理!