【摘 要】數據庫系統開發中,界面菜單具有“點睛”之效,本文介紹如何用Access的宏來快速設計菜單。
【關鍵詞】Access 數據庫 宏 菜單設計
一、概述
在開發數據庫應用系統時,一個重要的問題就是開發平臺的選擇。目前,大多數據庫系統本身就是一個集成的開發環境(IDE,Integrated Development Environment),一般來說,我們根據其數據庫管理系統(DBMS,DataBase Management System)的能力將數據庫系統分為三類:大型(如Oracle、SQL Server)、中型(如Visual FoxPro)、小型(如Access)。
數據庫開發平臺的選擇原則總的說來要依據:適度先進、滿足需求、恰當適用。Access作為Microsoft Office套裝產品之一,是一款典型的桌面數據庫管理系統,它為用戶提供了完整的可視化開發環境,使用戶可以在輕松友好的環境下完成應用系統的開發。
Access功能強大、使用方便,最為顯著的特點有二:一是文件簡單,在默認條件下Access數據庫文件(.mdb)本身保存所有應用對象(表、查詢、窗體、報表等);二是Access內嵌VBA(Visual Basic for Application)編程語言,可以完成特殊的、復雜的操作。
二、Access宏介紹
Access的宏(Macro)是執行特定任務的操作或操作集合,它是由Access本身提供的,我們可以將它看作是不能修改的程序模塊。Access2003提供了56個操作,其中每個操作都實現特定的功能,根據用途可將他們分成以下幾類:
1. 窗體和報表中的數據處理,如OpenForm操作來打開窗體、OpenTable 操作打開表。
2. 執行特定任務,如RunApp操作運行應用程序、RunCode 操作可以調用VB的 Function 過程。
3. 導入和導出,如TransferDatabase 操作,可以在當前的數據庫 (.mdb)與其他數據庫之間導入和導出數據。
4. 對象處理,如CopyObject 操作,可以將指定的數據庫對象復制到另外一個 Access 數據庫 (.mdb) 中,或以新的名稱復制到同一數據庫或 Access 項目 (.adp) 中。
5. 其他,如Beep 操作,通過計算機的揚聲器發出嘟嘟聲;Close操作關閉指定的窗口;Quit 操作可以退出Microsoft Access。
一個宏可以是一個操作,也可以是由包含多個操作,在設計時,可由“宏名”欄定義一個名稱,由多個命了名的宏可以組成宏組;在設計時,還可以使用“條件”欄定義一個表達式以決定在某些條件下運行宏,這就是條件宏。
三、用宏設計應用系統菜單
我們說Windows風格界面精美,便于人機交互,界面信息量大,其精華就體現在“菜單”。根據使用情況一般分為“菜單”(下拉菜單)和“快捷菜單”(彈出菜單)兩類。由于Access的宏設計簡單,我們在開發應用系統時可以利用它來快速進行菜單設計,如我們要設計如下圖這樣的下拉式系統菜單:
其設計方法及步驟為:
1. 創建主窗體,新建一個空數據庫文件(如sbgl.mdb),切換到“窗體”對象,新建一個應用系統主窗體(以“設備管理”為窗體對象名保存),并設置其相應屬性,如標題屬性設置為:設備管理系統。
2. 創建主菜單,切換到“宏”對象,新建一個名為“MainMenu”的宏對象,在設計窗口中分別用AddMenu操作來添加菜單項,AddMenu操作有兩個主要參數:
①菜單名稱:用來輸入下拉式菜單的名稱,如“系統功能”。
若要創建訪問鍵"(如Alt+S)以便使用鍵盤來選擇菜單,則在菜單名稱框內輸入“字母”的組合(如S),菜單中該字母將帶有下劃線。
②菜單宏名稱:另一個宏或宏組的名稱,該宏組中包含上述菜單命令所對應的宏。如:“系統功能”主菜單下可輸入:S_Submenu;“查詢”主菜單下可輸入:F_Submenu;“幫助”主菜單下可輸入:H_Submenu。該名稱是主菜單與子菜單聯系的唯一通道。
3. 創建子菜單,在“宏”對象模式下創建各子菜單宏,如S_Submenu。在設計窗口中的“宏名”欄中輸入各子菜單的名稱,如“打開”、“新建”等,每欄輸入一個子菜單名。
若要在兩個菜單名之間創建分隔線,則在“宏名”欄中該兩個菜單名之間鍵入連字符 (-)。
另外,還要在每個子菜單后的“操作”欄中選取相應的操作并設置相應的參數,以實現該子菜單對應的功能。
4. 將菜單應用于主窗體,切換到“窗體”對象,選擇要附加菜單的窗體,如“設備管理”窗體。在設計視圖中,設置其屬性,在窗體的“菜單欄”屬性中輸入菜單欄宏對象的名稱。如:MainMenu。這樣就將窗體與菜單聯系到了一起。
如果要設計符合需要的快捷菜單,只需將相應窗體的“快捷菜單”屬性設置成“是”,并在其“快捷菜單欄”屬性欄中輸入快捷菜單宏的名稱即可。
上述設計過程,不是唯一的,也可以先進行各子菜單宏的設計,再設計主菜單,最后設計主窗體。應用系統總體設計階段盡可能采取“自頂向下”(top to bottom)的設計思想,在具體實施階段可采用“自底向上”(bottom to top)的設計方法。
參考文獻:
[1]蘇瑞,曹斌. Access數據庫系統項目開發實踐,科學出版社,2006.