第10章菜單設(shè)計(jì)與建立應(yīng)用程序系統(tǒng)_第1頁(yè)
第10章菜單設(shè)計(jì)與建立應(yīng)用程序系統(tǒng)_第2頁(yè)
第10章菜單設(shè)計(jì)與建立應(yīng)用程序系統(tǒng)_第3頁(yè)
第10章菜單設(shè)計(jì)與建立應(yīng)用程序系統(tǒng)_第4頁(yè)
第10章菜單設(shè)計(jì)與建立應(yīng)用程序系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩19頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、visual foxpro第九章菜單設(shè)計(jì)與建立應(yīng)用程序系統(tǒng)菜單基礎(chǔ)菜單是應(yīng)用程序的一個(gè)重要組成部分,vfp中可以通過(guò)以往的常規(guī)程序設(shè)計(jì)方法,直接編寫代碼進(jìn)行菜單設(shè)計(jì),但通過(guò)vfp提供的菜單設(shè)計(jì)器,可以更為方便、靈活地設(shè)計(jì)出完美的、具有windows風(fēng)格的菜單系統(tǒng)。9.1 創(chuàng)建菜單 菜單系統(tǒng)由菜單欄、菜單標(biāo)題、菜單及菜單項(xiàng)組成,它通常處于程序的主窗口之中,是構(gòu)成應(yīng)用程序主框架的重要部分。我們可以將菜單的設(shè)計(jì)分為菜單規(guī)劃、菜單創(chuàng)建、功能實(shí)現(xiàn)(指定菜單任務(wù))和(菜單)程序生成四個(gè)步驟進(jìn)行。9.1.1 菜單規(guī)劃(1)在制作菜單之前,一定要對(duì)菜單有一個(gè)整體的規(guī)劃,規(guī)劃的原則有以下幾點(diǎn):(1)合理地組織菜

2、單(2)菜單項(xiàng)的組織順序要按一定的規(guī)則進(jìn)行,要符合一般的習(xí)慣。(3)菜單的標(biāo)題要有一定意義9.1.1 菜單規(guī)劃(2)(4)菜單的訪問(wèn)鍵以及快捷鍵的選擇一要考慮到上一代(如果有的話)程序的選擇,二要考慮到目前多數(shù)軟件的自然約定選擇。(5)盡量將菜單項(xiàng)的數(shù)目限制在一個(gè)屏幕之內(nèi)(6)在菜單的不同邏輯組之間加入分隔線,以便于用戶的選擇(7)對(duì)英文菜單,其菜單名稱建議采用大小寫混合字體等。9.1.2 新建菜單(1) 在vfp中,新建菜單要通過(guò)菜單設(shè)計(jì)器來(lái)進(jìn)行,打開(kāi)菜單設(shè)計(jì)器的方法有兩個(gè): (1)選擇“文件”菜單中的“新建”命令項(xiàng),從“新建”窗口中選擇“菜單”,然后選擇“新建文件”或“向?qū)А卑粹o,打開(kāi)菜單

3、設(shè)計(jì)器 (2)從項(xiàng)目管理器中選擇“其他”選項(xiàng)中的“菜單”選項(xiàng),然后選擇“新建”按鈕打開(kāi)菜單設(shè)計(jì)器。9.1.2 新建菜單(2) 打開(kāi)菜單設(shè)計(jì)器后,系統(tǒng)顯示如圖所示。9.1.2 新建菜單(3)菜單設(shè)計(jì)器的組成(1)菜單編輯區(qū):菜單編輯區(qū)是進(jìn)行菜單輸入、編輯的區(qū)域,包含有如下項(xiàng)目:移動(dòng)按鈕:在菜單項(xiàng)的前面,用來(lái)調(diào)整菜單的次序菜單名稱:輸入、編輯菜單的名稱和快捷鍵結(jié)果:該菜單的類型(命令、子菜單、過(guò)程等)創(chuàng)建:根據(jù)“結(jié)果”的設(shè)置,進(jìn)行菜單的創(chuàng)建選項(xiàng):對(duì)菜單項(xiàng)進(jìn)行有關(guān)的設(shè)置。9.1.2 新建菜單(4)(2)選項(xiàng)和按鈕區(qū)該區(qū)域進(jìn)行菜單項(xiàng)的輔助操作,包括:菜單級(jí):選擇進(jìn)行操作的菜單級(jí)別(是主菜單還是某一級(jí)子

4、菜單)。菜單項(xiàng)按鈕區(qū):對(duì)編輯區(qū)的菜單項(xiàng)進(jìn)行插入菜單項(xiàng)、插入(系統(tǒng)菜單)欄、刪除菜單項(xiàng)操作。預(yù)覽:查看菜單設(shè)計(jì)的實(shí)際效果。9.2 菜單的設(shè)置9.2.1 選項(xiàng)的使用每個(gè)菜單的后面都有一個(gè)“選項(xiàng)”按鈕,單擊按此鈕,系統(tǒng)即打開(kāi)“提示選項(xiàng)”窗口。其中在“跳過(guò)”選項(xiàng)中可以設(shè)置菜單項(xiàng)是否啟動(dòng)的條件:若在此框中輸入一個(gè)邏輯表達(dá)式,則系統(tǒng)在運(yùn)行時(shí)會(huì)自動(dòng)根據(jù)此邏輯表達(dá)式的值來(lái)判定是否可使用該菜單項(xiàng),若邏輯表達(dá)式的值為.t.,則正常顯示該菜單項(xiàng),否則以淺色顯示,表示該菜單項(xiàng)不可用。9.2.2 菜單的常規(guī)選項(xiàng)打開(kāi)菜單設(shè)計(jì)器后,在系統(tǒng)的“顯示”菜單中將增加“常規(guī)選項(xiàng)”菜單項(xiàng),從中可以對(duì)菜單運(yùn)行時(shí)作必要的設(shè)置。其中“位置

5、”選項(xiàng)可以設(shè)置本菜單和原菜單的關(guān)系,一般選擇“替換”。有關(guān)“設(shè)置”和“清理”的作用在后面章節(jié)具體介紹。9.2.3 菜單的設(shè)置代碼菜單的設(shè)置代碼是菜單在執(zhí)行之前首先執(zhí)行的程序部分,其作用是進(jìn)行全局性設(shè)置,為執(zhí)行菜單程序做必要的準(zhǔn)備。為菜單添加設(shè)置代碼是在“常規(guī)選項(xiàng)”窗口中進(jìn)行的。在“常規(guī)選項(xiàng)”窗口中單擊“設(shè)置”按鈕,會(huì)彈出一個(gè)“菜單設(shè)計(jì)器-xxx-設(shè)置”窗口(xxx表示菜單文件名),其中顯示有菜單的設(shè)置代碼,此時(shí)再單擊“確定”按鈕,即可將插入點(diǎn)移動(dòng)到“菜單設(shè)計(jì)器-xxx-設(shè)置”窗口中,對(duì)設(shè)置代碼進(jìn)行修改。9.2.4 菜單的清理代碼(1)菜單的清理代碼是菜單在執(zhí)行結(jié)束之后要執(zhí)行的程序部分,其作用是

6、對(duì)菜單執(zhí)行完畢后做一些清理等善后工作,有時(shí)也用作激活菜單。需要特別提出的是:在vfp中菜單的運(yùn)行是通過(guò)事件循環(huán)機(jī)制來(lái)實(shí)現(xiàn)的,定義的菜單不能直接執(zhí)行,必須通過(guò)一個(gè)read events命令才能將菜單激活并且進(jìn)入事件循環(huán)狀態(tài),菜單才可用。如果沒(méi)有read events命令,菜單將一閃而過(guò),根本不能停留在屏幕上,更無(wú)法操作。read events可以放在清理菜單的開(kāi)頭(因?yàn)椴?.2.4 菜單的清理代碼(2)單沒(méi)有激活,不能停留,故執(zhí)行完畢后將立即執(zhí)行清理程序,從而執(zhí)行read events語(yǔ)句,進(jìn)入事件循環(huán)狀態(tài)),也可以放置在調(diào)用菜單程序的調(diào)用語(yǔ)句之后,例如: do c:rsglmain_menu.

7、mpr read events (其中mpr為菜單程序擴(kuò)展名) 菜單清理代碼的操作和菜單設(shè)置代碼的操作基本一致,不再詳述。9.3 菜單任務(wù)的指定(1)對(duì)于菜單中的命令項(xiàng),必須指定當(dāng)選擇該菜單項(xiàng)時(shí)要執(zhí)行的命令,主要有兩種方法:9.3.1 執(zhí)行命令當(dāng)一個(gè)菜單項(xiàng)的任務(wù)只需一條命令即可完成時(shí),可在該菜單項(xiàng)的“結(jié)果”下拉列表中選擇“命令”選項(xiàng),然后在后面的命令文本框中直接輸入命令即可。例如,要運(yùn)行c盤根目錄下rsgl文件夾中的表單edit.scx,則可輸入如下命令: do form c:rsgledit.scx9.3 菜單任務(wù)的指定(2)9.3.2 執(zhí)行過(guò)程當(dāng)一個(gè)菜單項(xiàng)的任務(wù)需一段程序才能完成時(shí),可在該

8、菜單項(xiàng)的“結(jié)果”下拉列表中選擇“過(guò)程”選項(xiàng),然后單擊后面的“創(chuàng)建”命令按鈕,系統(tǒng)即彈出一個(gè)“菜單設(shè)計(jì)器-xxx-過(guò)程”窗口(xxx表示該菜單項(xiàng)名),從中即可輸入和編輯該菜單項(xiàng)所要執(zhí)行的命令序列。輸入完畢后,單擊窗口的關(guān)閉按鈕,將輸入的過(guò)程保存起來(lái)即完成了命令過(guò)程的編輯。9.3 菜單任務(wù)的指定(3)9.3.3 創(chuàng)建子菜單若某一菜單項(xiàng)下面還有子菜單,可在該菜單項(xiàng)的“結(jié)果”下拉列表中選擇“子菜單”選項(xiàng),然后單擊后面的“創(chuàng)建”按鈕(若某一菜單項(xiàng)已經(jīng)有子菜單時(shí),此按鈕為“編輯”),即可打開(kāi)子菜單設(shè)計(jì)窗口,可進(jìn)行子菜單編輯。編輯完成后,可以關(guān)閉窗口結(jié)束菜單編輯,也可通過(guò)“菜單級(jí)”選項(xiàng)選擇其他的子菜單或主菜

9、單繼續(xù)進(jìn)行編輯。9.4 成成菜單程序(1)9.4.1 菜單預(yù)覽對(duì)設(shè)計(jì)的菜單,用戶可隨時(shí)進(jìn)行預(yù)覽來(lái)觀察其效果,在菜單設(shè)計(jì)器中有一個(gè)“預(yù)覽”按鈕,單擊此按鈕,在系統(tǒng)窗口菜單位置將會(huì)出現(xiàn)設(shè)計(jì)的菜單效果,可根據(jù)預(yù)覽效果進(jìn)行進(jìn)一步的菜單設(shè)計(jì)。9.4 生成菜單程序(2)9.4.2 生成菜單程序在項(xiàng)目管理器中制作的菜單作為擴(kuò)展名為mnx的文件被保存,若在項(xiàng)目管理器中運(yùn)行菜單程序,則系統(tǒng)會(huì)生成一個(gè)mpr程序源代碼程序,系統(tǒng)運(yùn)行的也是生成后的mpr源代碼程序,而非前面制作的菜單。注:在vfp中,擴(kuò)展名為mnx、mnt、mpr、mpx的文件均是菜單文件,但只有mpr文件為源代碼文件,mnt為菜單備注文件,mnx為

10、菜單文件,mpx為編譯后的菜單程序。9.4 生成菜單程序(3)對(duì)一個(gè)已經(jīng)制作好的菜單,要生成mpr源代碼程序也很簡(jiǎn)單,其步驟是:(1)在菜單設(shè)計(jì)器中打開(kāi)要生成mpr源代碼程序的菜單(2)選擇vfp系統(tǒng)菜單的“菜單”項(xiàng),選擇其“生成”命令項(xiàng)(3)在“生成菜單”對(duì)話框中輸入mpr源代碼程序文件名,再單擊“生成”按鈕。9.4 生成菜單程序(4)9.4.3 查看與修改菜單源代碼程序?qū)Σ藛卧创a程序,可通過(guò)兩種方式進(jìn)行查看與修改。(1)通過(guò)“文件”菜單的“打開(kāi)”命令項(xiàng)選擇要打開(kāi)的.mpr菜單文件將其打開(kāi)。(2)在命令窗口輸入命令,其格式為: modify command 注意:對(duì)若用菜單生成器重新生成了

11、mpr源代碼程序文件,則上述兩種方法對(duì)菜單的修改將被取消,所以修改菜單盡量用菜單設(shè)計(jì)器。9.5 建立應(yīng)用程序(1)到目前為止,我們已經(jīng)講述了vfp的主要內(nèi)容,即可通過(guò)vfp設(shè)計(jì)實(shí)際的應(yīng)用系統(tǒng),在設(shè)計(jì)實(shí)際應(yīng)用系統(tǒng)時(shí),其基本步驟如下:(1)通過(guò)分析,了解系統(tǒng)需要的主要功能,根據(jù)功能設(shè)計(jì)出系統(tǒng)的具體部分(數(shù)據(jù)庫(kù)、表單、菜單等)。(2)通過(guò)項(xiàng)目管理器建立一個(gè)項(xiàng)目(3)在項(xiàng)目管理器中完成系統(tǒng)具體功能的設(shè)計(jì)和調(diào)試。9.5 建立應(yīng)用程序(2) (4)設(shè)置系統(tǒng)的主程序:在項(xiàng)目管理器中,右單擊要設(shè)置為主程序的文件,從彈出的快捷菜單中選擇“設(shè)置主文件”項(xiàng),即可將該文件設(shè)置為主文件,vfp將把主文件作為系統(tǒng)運(yùn)行的起始程序。 (5)對(duì)程序進(jìn)行必要的美化,如設(shè)計(jì)封面、背景、口令等。 (6)在項(xiàng)目管理器中連編項(xiàng)目,生成exe文件(在windows

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論