




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第第9章章 開發(fā)應用程序開發(fā)應用程序Visual FoxPro Visual FoxPro 程序設計(第三版)程序設計(第三版)第第9 9章章 開發(fā)應用程序開發(fā)應用程序第第9章章 開發(fā)應用程序開發(fā)應用程序應用程序的開發(fā)過程應用程序的開發(fā)過程9.1應用程序生成器應用程序生成器9.2第第9章章 開發(fā)應用程序開發(fā)應用程序本章主要內(nèi)容:本章主要內(nèi)容:l應用程序的開發(fā)過程。l連編應用程序的方法。l應用程序生成器的使用。第第9章章 開發(fā)應用程序開發(fā)應用程序9.1 應用程序的開發(fā)過程應用程序的開發(fā)過程學習VFP的最終目的是開發(fā)一個數(shù)據(jù)庫應用系統(tǒng)。本章主要介紹開發(fā)數(shù)據(jù)庫應用程序的方法和步驟,以及如果把設計好的
2、數(shù)據(jù)庫、表單、報表、菜單等分離的應用系統(tǒng)組件在項目管理器中連編成一個完整的應用程序。一個實用的數(shù)據(jù)庫應用系統(tǒng)應該包括下面幾部分:確定系統(tǒng)的功能和需求,設計一個或多個數(shù)據(jù)庫。設計用戶界面。例如輸入表單、顯示表單、工具欄和菜單等。進行事務處理。如查詢、統(tǒng)計和計算。設計輸出形式與界面。如瀏覽、排序、報表、標簽等。設計主程序。設置應用程序系統(tǒng)環(huán)境和起始點。第第9章章 開發(fā)應用程序開發(fā)應用程序一個完整的應用程序,可能包含了多種類型的文件,如數(shù)據(jù)庫文件、表文件以及菜單、表單、報表、位圖等文件。不能圖省事而把所有文件都存放在一個文件夾下,而應該根據(jù)文件類型建立一個層次清晰的目錄結(jié)構(gòu),以方便日后的修改和維護工
3、作。例如可將數(shù)據(jù)庫文件(DBC)、表文件(DBF)和索引文件(CDX)都存儲在DATA目錄下。第第9章章 開發(fā)應用程序開發(fā)應用程序般情況下,完整的應用程序需要為用戶提供一個菜單、一個或多個用于數(shù)據(jù)輸入和輸出的表單。為了保證數(shù)據(jù)的完整性和安全性,還需要為某些事件編寫代碼,提供特定功能。同時允許用戶從數(shù)據(jù)庫讀取數(shù)據(jù),可能還需要提供查詢和報表輸出功能。在完成了所有的功能組件的設計、制作和檢驗以后,就可以使用“項目管理器”對應用程序進行集成和連編了。使用“項目管理器”組織應用系統(tǒng)的步驟是:創(chuàng)建或打開一個項目。將已經(jīng)開發(fā)好的各個模塊或部件通過項目管理器添加到該項目中。在項目管理器中自下而上地調(diào)試各個模塊
4、。所謂“自上而下”是指先調(diào)試可以獨立運行的模塊單元,如一個輸入表單、一個輸出報表。然后再調(diào)試運行調(diào)用它們的模塊單元,如主菜單。第第9章章 開發(fā)應用程序開發(fā)應用程序項目信息是程序員對項目的描述。有兩種方法可打開“項目信息”對話框。第一種方法在系統(tǒng)菜單中的“項目”菜單下選擇“項目信息”命令項。第二種方法是在項目管理器上右擊鼠標,然后從彈出的快捷菜單上選擇“項目信息”命令項。“項目信息”對話框中有三個選項卡:項目,文件,服務程序,如圖9.3所示。在“項目”選項卡中可以輸入的信息包括開發(fā)者的姓名、地址和項目的主目錄。“項目”項卡今還有三個復選框:調(diào)試信息,加密和附加圖標。如果選擇了“調(diào)試信息”,在調(diào)試
5、過程會有一些提示信息顯示,這對程序的調(diào)試有很大幫助,但是會增加程序的大小。如果選擇了“加密”復選框,應用程序?qū)⒈患用埽蠼鈶贸绦虻脑创a會很難。通過“附加圖標”復選框指定是否為生成的文件選擇自己的圖標。設置完成后按“確定”按鈕,則關閉“項目信息”對話框。第第9章章 開發(fā)應用程序開發(fā)應用程序?qū)⒁粋€項目編譯成一個應用程序時,所有項目包含的文件組合為一個單一的應用程序文件。在項目連編之后,那些在項目中標記為“包含”的文件將變?yōu)橹蛔x文件。如果應用程序中包含需要用戶修改的文件,必須將該文件標為“排除”。排除文件仍然是應用程序的一部分,但是這些文件沒有在應用程序的文件中編譯,所以用戶可以更新它們。主程序
6、是整個應用程序的入口點,主程序的傻是設置應用程序的起始點、初始化環(huán)境、顯示初始的用戶界面、控制事件循環(huán),當退出應用程序時,恢復原始的開發(fā)環(huán)境。項目管理器以黑體顯示設置為主程序文件的名稱。第第9章章 開發(fā)應用程序開發(fā)應用程序 方法一:在項目管理器中選中要設置的主程序文件,從“項目”菜單或快捷菜單中選擇“設置主文件”選項。項目管理器將應用程序的主文件自動設置為“包含”,在編譯完應用程序之后,該文件為只讀文件。 方法二:在“項目信息”的“文件”選項卡中選中要設置的主程序后右擊鼠示,在快捷菜單中選擇“設置主程序文件”,這種情況下,只有把文件設置為“包含”之后才激活“設置主文件”選項。標記為主文件的文件
7、不能排除。第第9章章 開發(fā)應用程序開發(fā)應用程序連編項目時注意的問題:(1)連編項目時,會自動把所有的隱式文件包含在項目中。下一次查看項目時,引用的文件會出現(xiàn)在“項目管理器”中。(2)“項目管理器”解決不了對圖文件的引用,需要將這些文件手工添加到項目中。(3)連編項目也不能自動包含那些用“宏替換”進行引用的文件,也應手工添加并包含這些引用文件。第第9章章 開發(fā)應用程序開發(fā)應用程序項目連編的步驟:(1)選中設置為主程序的文件,單擊“連編”按鈕,彈出“連編選項”對話框;(2)在“連編選項”對話框中,選擇“重新連編項目”;(3)如果選擇了“顯示錯誤”復選框,可以查看錯誤文件(錯誤收集在當前目錄的一個.
8、err文件中)。(4)如果沒有在“連編選項”對話框中選擇“重新編譯全部文件”復選框,只會重新編譯上次連編后修改過的文件。(5)選擇了所需的選項后,單擊“確定”按鈕。以上操作等價于命令:BUILDPROJECT第第9章章 開發(fā)應用程序開發(fā)應用程序連編項目獲得成功之后,在建立應用程序之前應該試著運行該項目。如果程序運算正確,就可以最終連編成一個應用程序文件了。應用程序文件包括項目中所有“包含”文件,應用程序連編結(jié)果有兩種形式:(1)應用程序文件(.app):需要在VFP中運行。(2)可執(zhí)行文件(.exe):可在Windows下運行。第第9章章 開發(fā)應用程序開發(fā)應用程序連編應用程序步驟:(1)在“項
9、目管理器”中選擇“連編”按鈕;(2)如果在“連編選項”對話框中,選擇“連編應用程序”復選框,則生成一個.app文件;若選擇“連編可執(zhí)行文件”復選框,則生成一個.exe文件。(3)選擇所需的其他選項并單擊“確定”按鈕。等價命令為:BUILDAPPFROMBUILDEXEFROM第第9章章 開發(fā)應用程序開發(fā)應用程序(1)連編COMDLL:使用項目文件中的類信息創(chuàng)建一個具有.dll文件擴展名的動態(tài)鏈接庫。(2)“版本”按鈕:當選擇“連編可執(zhí)行文件”或“連編COMMDLL”時,激活“版本”按鈕,在“版本”對話框中允許指定版本號以及版本類型。(3)重新生成組件ID:安裝并注冊包含在項目中的自動服務程序。
10、只能創(chuàng)建和注冊“類”菜單“類信息”對話框中標識為“OLEPublic”的類。(只有當選定“連編可執(zhí)行文件”或“連編COMDLL”,并已經(jīng)連編包含OLEPublic關鍵字的程序時該選項才用。第第9章章 開發(fā)應用程序開發(fā)應用程序(1)運行.app應用程序:在VFP中選擇“程序”菜單中的“運行”選項,選擇要執(zhí)行的應用程序;或者在命令窗口輸入DO。(2)運行可執(zhí)行.exe文件。生成的.exe應用程序文件既可以在VFP中運行,也可以在Windows中雙擊該.exe文件的圖標運行。第第9章章 開發(fā)應用程序開發(fā)應用程序從當前環(huán)境截取環(huán)境設置命令的方法:(1)從工具菜單中選擇“選項”,按下Shift鍵同時選擇
11、“確定”,則可以在“命令”窗口中顯示環(huán)境的SET命令。(2)從“命令”窗口中,將命令復制和粘貼到程序中。除了環(huán)境以外,在應用程序中通常還需要編寫程序代碼執(zhí)行初始化變量、建立默認的路徑、打開需要的數(shù)據(jù)庫、表及索引等功能。第第9章章 開發(fā)應用程序開發(fā)應用程序 控制事件循環(huán)的方法是執(zhí)行READEVENTS命令。在啟動了事件循環(huán)之后,應用程序?qū)⑻幵谒凶詈箫@示的用戶界面元素的控制之下,否則應用程序運行后可能顯示片刻然后退出。 需要注意的是,在啟動事件循環(huán)之前建立一個方法退出事件循環(huán)。第第9章章 開發(fā)應用程序開發(fā)應用程序以下是一個簡單的主程序:SETDEFAULTTOD:學生SETSAFEOFFSETC
12、ENTURYONCLEARWINDOWSCLEARALLOPENDATABASE學生檔案EXCLUSIVEUSE學生DOFORM啟動畫畫.scxREADEVENTSSETSYSMENUTODEFASETSAFEONSETCENTURYOFFCLOSEALLCLEARALLCLEARWINDOWS第第9章章 開發(fā)應用程序開發(fā)應用程序9.2 應用程序生成器應用程序生成器開發(fā)者利用應用程序向?qū)軌蛏梢粋€項目和一個VFP應用程序框架,然后打開應用程序生成器可以添加已生成的數(shù)據(jù)庫、表、表單和報表等組件。第第9章章 開發(fā)應用程序開發(fā)應用程序應用程序生成器包括“常規(guī)”、“信息”、“數(shù)據(jù)”、“表單”、“報表
13、”和“高級”6個選項卡。(注意每個選項卡下包括的信息,另外,注意不是用應用程序向?qū)?chuàng)建的項目,在應用程序生成器中只有哪些選項可用)第第9章章 開發(fā)應用程序開發(fā)應用程序使用應用程序生成器1應用程序生成器的啟動(1)在項目上右單擊,選擇快捷菜單上的“生成器”菜單項。(2)從“工具”菜單中啟動“應用程序生成器”(3)按Alt+F2鍵。如果項目不是用“應用程序向?qū)А眲?chuàng)建的,由于沒有事先建立完整的應用程序框架,啟動應用程序生成器只為應用程序創(chuàng)建元表,即只有“數(shù)據(jù)”、“表單”和“報表”三個選項卡可用。2使用應用程序向?qū)?chuàng)建項目新建項目向?qū)贸绦蛳驅(qū)υ捒虻诘?章章 開發(fā)應用程序開發(fā)應用程序3添加已創(chuàng)建的
14、數(shù)據(jù)庫可以使用已有的數(shù)據(jù),或生成新的數(shù)據(jù)庫以滿足應用程序的需要。4創(chuàng)建表單和報表5查看和修改表單與報表6連編項目7連編應用程序第第9章章 開發(fā)應用程序開發(fā)應用程序新建一個文件夾,將連編好的可執(zhí)行文件、數(shù)據(jù)文件以及沒有編譯進可執(zhí)行文件的其他文件置于這個文件夾中。然后運行“安裝向?qū)А睍r指定此文件夾,“安裝向?qū)А本蜁?chuàng)建發(fā)布所需的所有文件,包括所有必需的系統(tǒng)文件。工具向?qū)肯驅(qū)нx取對話框安裝向?qū)е挥姓娴钠髽I(yè)版VFP6.0才能完全運行安裝向?qū)А5诘?章章 開發(fā)應用程序開發(fā)應用程序發(fā)布目錄用來存放構(gòu)成應用程序的所有項目文件的副本。發(fā)布目錄樹的結(jié)構(gòu)也就是由“安裝向?qū)А眲?chuàng)建的安裝程序?qū)⒃谟脩魴C器上創(chuàng)建的
15、文件結(jié)構(gòu)。如圖所示若要創(chuàng)建發(fā)布目錄可按如下步驟進行:創(chuàng)建目錄,目錄名為希望在用戶機器上出現(xiàn)的名稱。把發(fā)布目錄分成適合于應用程序的子目錄。把應用程序項目中的文件復制到相應目錄中。應用程序(.exe)必須放在該樹的根目錄下,如VFP。第第9章章 開發(fā)應用程序開發(fā)應用程序在VFP的常用工具欄中,單擊“新建”按鈕打開“新建”對話框,在該對話框的文件類型選項按鈕中選擇“項目”,單擊“向?qū)А保趶棾龅摹皯贸绦蛳驅(qū)А睂υ捒蛑?,為新建的項目文件選擇“VFP”目錄,輸入項目名“教師檔案管理系統(tǒng)”,選中“創(chuàng)建項目目錄結(jié)構(gòu)”復選框,并單擊“確定”,系統(tǒng)會自動生成一個“教師檔案管理系統(tǒng)”管理項目和項目結(jié)構(gòu)。第第9章
16、章 開發(fā)應用程序開發(fā)應用程序VFP應用程序至少需要:一個菜單、一個表單和一個主程序。當然數(shù)據(jù)庫也是應用程序的一部分。下面我們將把這些元素依次添加到“教師檔案管理系統(tǒng)”項目中去。(注:以下的操作均在項目管理屏幕中進行。)(1)把數(shù)據(jù)庫加入到項目中單擊“數(shù)據(jù)”選項卡并選中列表框中“數(shù)據(jù)庫”項,再單擊右側(cè)的“添加”按鈕,在彈出的“打開”對話框中選取先前我們創(chuàng)建的“教師檔案管理系統(tǒng)”數(shù)據(jù)庫,確認后,列表框中“數(shù)據(jù)庫”項的左邊出現(xiàn)一個加號,單擊加號展開“數(shù)據(jù)庫”項,可以看到“教師檔案管理系統(tǒng)”數(shù)據(jù)庫已經(jīng)被加入到項目中,依次展開“教師檔案管理系統(tǒng)”、“表”等項,便可利用右側(cè)的命令按鈕來進行打開、關閉或修改
17、數(shù)據(jù)庫,修改表結(jié)構(gòu),瀏覽表等操作了。第第9章章 開發(fā)應用程序開發(fā)應用程序(2)創(chuàng)建表單單擊“文檔”選項卡并選中“表單”項,單擊“新建”,在彈出的“新建表單”對話框中單擊“表單向?qū)А?,在彈出的“向?qū)нx取”對話框中選取“表單向?qū)А边x中數(shù)據(jù)庫“教師檔案管理系統(tǒng)”的表“教師基本情況表”,單擊單箭頭按鈕以移動“教師基本情況表”中的幾個字段到位于向?qū)聊挥也康摹斑x定字段”列表中。用鼠標拖放選定字段左側(cè)的拖動塊可以改變字段在表單中的顯示次序。單擊“下一步”,進行表單樣式的選擇。在這里選擇了“浮雕式”和“圖片按鈕”。接著選取“編號”作為排序字段。最后,單擊“預覽”命令按鈕來預覽該表單,如果不滿意,可以用“上一
18、步”命令按鈕返回前面的屏幕重新選擇;否則選取“保存并運行表單”,單擊“完成”,在彈出的“另存為”對話框中,選擇“FORMS”目錄,并給此表單命名為“教師基本情況表”,單擊“保存”后可以看到完成后的表單第第9章章 開發(fā)應用程序開發(fā)應用程序(3)添加一個菜單在應用程序中,尤其是Windows的應用程序中,菜單一般說來是必不可少的。單擊“教師基本情況表”表單的退出按鈕以關閉表單并返回到“項目管理器”。單擊最后一個選項卡“其他”,選中“菜單”列表項并單擊右側(cè)的“添加”,在彈出的對話框中,選擇路徑,選擇該路徑下的“manu”菜單后,單擊“確定”。第第9章章 開發(fā)應用程序開發(fā)應用程序(4)加入主程序現(xiàn)在只
19、需要一個控制整個項目的主程序。在“項目管理器”屏幕中單擊“代碼”選項卡,選中“程序”列表項,然后單擊“新建”,在彈出的“程序1”窗口中輸入下面的代碼:(如書P258)關閉“程序1”窗口,輸入程序名MAIN并選擇“PROGS”目錄存放,擴展名.PRG被自動加入并返回到項目管理器。用鼠標右鍵單擊項并在彈出的快捷菜單中,選取“設置主文件”。設置后,MAIN被加粗顯示。此后VFP便以MAIN.PRG來啟動應用程序?,F(xiàn)在的應用程序能完成下列任務:第第9章章 開發(fā)應用程序開發(fā)應用程序l 保存VFP原先的搜索路徑,并設置應用程序的搜索路徑。l 打開數(shù)據(jù)庫“教師檔案管理系統(tǒng)”,使“教師基本情況表”表和其它表的
20、關系可用。l 用創(chuàng)建的菜單取代VFP的標準菜單。注意菜單是用它所生成的帶有擴展名的代碼,例如MENU.MPR來表示的。從這時起,我們設計的菜單將是屏幕上的唯一菜單,直到我們使用SETSYSMENUTODEFAULT命令。l 執(zhí)行READEVENTS命令。這樣使表單和其它對象處于激活狀態(tài)。命令在用戶選擇退出之前一直有效,EXIT執(zhí)行CLEAREVENTS命令。此時,控制立即傳遞給READEVENTS命令后的語句。l 從屏幕上移去所有遺留下來的表單。l 關閉所有用戶文件。l 恢復原來的VFP菜單和搜索路徑。第第9章章 開發(fā)應用程序開發(fā)應用程序(5)建立應用程序在允許應用程序運行之前的最后一件事是生
21、成它。單擊位于項目管理器屏幕右側(cè)按鈕中的“連編”?!爸匦逻B編項目”讀出應用程序的各種組成部分,建立項目文件,加入屏幕、程序和菜單中所引用的種種元素。我們可以在項目中只加入MAIN.PRG并讓VFP重建該項目,它將會發(fā)現(xiàn)其它的組成部分。“連編應用程序”建立一個帶有擴展名.app的VFP的輸出文件?!斑B編可執(zhí)行程序”建立一個.exe文件。它與.app之間的區(qū)別在于:當運行一個.app文件時,必須在VFP的基礎上才能運行它。沒有VFP的人可以使用.exe的程序文件。如果生成了.exe文件,要運行這個程序只需要使用程序名即可?!斑B編OLEDLL”是使用項目文件中的類信息,創(chuàng)建一個具有.dll文件擴展名
22、的動態(tài)鏈接庫。此處我們選擇“連編應用程序”。第第9章章 開發(fā)應用程序開發(fā)應用程序(6)運行程序檔案管理系統(tǒng).app,或者在命令窗口中輸入:DO教師檔案管理系統(tǒng)可以看到,VFP的菜單變?yōu)橐粋€新菜單,菜單中除了我們建立的兩個菜單名外,可能還有一個菜單名“項目”,關閉項目管理器屏幕,此菜單名消失。單擊“教師基本情況表”,將會見到如圖4.4所示的屏幕。有興趣的讀者可以根據(jù)屏幕底部的圖形命令按鈕的提示試著操作一下。退出“教師基本情況表”屏幕后,單擊“退出”菜單名,應用程序運行結(jié)束并恢復VFP的系統(tǒng)菜單。第第9章章 開發(fā)應用程序開發(fā)應用程序VFP編譯生成的.EXE文件是不能直接在另一臺電腦上運行的,除非該電腦中已經(jīng)裝有VFP系統(tǒng),因為EXE文件的運行要依賴于安裝在WINDOWS系統(tǒng)中的運行時刻庫。為此我們要為該軟件制作一套安裝盤,方法如下:在開發(fā)的軟件的目錄下建一個子目錄,比如叫vfp,當然也可以建在別什么地方或叫別的什么名字。第第9章章 開發(fā)應用程序開發(fā)應用程序?qū)⒃撥浖玫降臄?shù)據(jù)庫(.dbc)、數(shù)據(jù)庫備注(.dct)、數(shù)據(jù)庫索引(.dcx)、表(.dbf)、表索引(.cdx、.idx)、表備注(.fpt)、內(nèi)存變量文件(.mem)等等,再就是編譯后的.exe文件通通復制到上面所建的目錄中,然后將復制過去的數(shù)據(jù)表中試運行用的記錄清除,但要注意有些數(shù)據(jù)可能是軟件預先應提供
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 節(jié)約食品協(xié)議書
- 幕墻板安裝合同協(xié)議書
- 能源買賣協(xié)議書
- 船舶拖帶協(xié)議書
- 老人獨居協(xié)議書
- 無條件終止合同協(xié)議書
- 幼兒園醫(yī)教聯(lián)合協(xié)議書
- 培訓班合伙合同協(xié)議書
- 快遞打包倉轉(zhuǎn)讓協(xié)議書
- 自愿情人協(xié)議書
- DB34∕T 2989-2017 山洪災害調(diào)查與評價技術規(guī)程
- 農(nóng)產(chǎn)品倉儲保鮮冷鏈設施建設工程實施方案
- 卵巢非良性腫瘤生育力保護及保存中國專家共識(2024年版)解讀
- 醫(yī)學唇部護理
- 腦膠質(zhì)瘤的治療:替莫唑胺-蒂清
- DL∕T 1746-2017 變電站端子箱
- 廣東省市政基礎設施工程竣工驗收技術資料統(tǒng)一用表(2019版)(下冊)
- 江蘇省蘇州市常熟市2023-2024學年五年級下學期數(shù)學期末檢測
- 江蘇省南京市鼓樓區(qū)2023-2024學年五年級下學期期末數(shù)學試卷
- YB/T 6328-2024 冶金工業(yè)建構(gòu)筑物安全運維技術規(guī)范(正式版)
- DZ∕T 0148-2014 水文水井地質(zhì)鉆探規(guī)程(正式版)
評論
0/150
提交評論