MFC 資料庫應用程式中的檔案功能表
如果您建立 MFC 資料庫應用程式且不使用序列化,您應該如何解譯 [檔案] 功能表上的 [開啟]、[關閉]、[儲存] 和 [另存新檔] 命令。雖然沒有此問題的樣式指導方針,以下是一些建議:
完全排除 [檔案] 功能表的 [開啟] 命令。
解譯 [開啟] 命令為「開放式資料庫」,並為使用者顯示一份應用程式識別的資料來源清單。
將 Open 命令解譯為「開啟設定檔」。保留 Open 以開啟序列化檔案,但使用 檔案來儲存包含「使用者設定檔」資訊的序列化檔,例如使用者的喜好設定,包括其登入識別碼(選擇性排除密碼),以及最近使用的資料來源。
MFC 應用程式精靈支援用與文件無關的 [檔案] 功能表命令建立應用程式。 在 [ 資料庫支援 ] 頁面上,選取 [沒有檔案支援 ] 選項的資料庫 檢視。
若要以特殊方式解譯 [檔案] 功能表命令,您必須覆寫一個或多個命令處理常式,多數是在您的 CWinApp
衍生類別中。 例如,如果您完全覆寫 OnFileOpen
(實作 ID_FILE_OPEN
命令) 來表示「開啟資料庫」:
不要呼叫
OnFileOpen
的基底類別版本,因為您完全取代了架構的預設命令實作。請改用處理常式以顯示對話方塊列示資料來源。 您可以藉由呼叫
CDatabase::OpenEx
或CDatabase::Open
參數 Null 來顯示這類對話方塊。 如此會開啟顯示使用者電腦上所有可用資料來源的 ODBC 對話方塊。由於資料庫應用程式通常不會儲存整份文件,您可能會想要移除 [儲存] 和 [另存新檔] 實作,除非您使用序列化文件來儲存設定檔資訊。 否則,您可以實作 Save 命令,例如「認可交易」。如需覆寫這些命令的詳細資訊,請參閱 Technical Note 22 。