文件/檢視架構
依預設,MFC 應用程式精靈建立的應用程式基本架構文件類別和其檢視類別。MFC 將資料管理分成這兩種類別。文件將資料儲存到和管理列印資料,並協調多重檢視的資料更新。檢視會顯示資料,並管理使用者與它,包括選取和編輯間的互動。
此模型的 MFC 文件物件讀取,並將資料寫入持續性儲存體。文件也會提供介面給資料,無論在何處儲存 (例如在資料庫中)。分隔檢視物件會呈現在使用者選取的視窗中的資料,或編輯資料的管理資料顯示。檢視從文件取得顯示的資料,並回到文件,進行通訊的任何資料變更。
雖然您可以輕易地覆寫,或略過的文件/檢視分隔,但也有令人讚嘆的理由遵照這種模型在大多數情況下。最好是當您需要相同的文件,如試算表及圖表檢視的多個檢視。文件/檢視模式讓分隔檢視物件表示的資料,同時共同程式碼 (例如一個計算引擎) 的所有檢視可能都位於文件中的每個檢視。文件也會使資料發生變更時,更新所有檢視的工作上。
MFC 的文件/檢視架構讓您更容易支援多重檢視、 多重文件類型、 分隔視窗和其他有價值的使用者介面功能。
MFC 架構中對使用者和程式設計師而言,最明顯的部份是文件和檢視。大部分以開發架構的應用程式的郵件會移至撰寫您的文件和檢視類別。本系列文件將告訴您:
文件和檢視表及它們如何在架構中互動之用。
您必須執行的實作它們。
文件/檢視的核心是四個主要類別:
CDocument (或 COleDocument) 類別支援用來儲存或控制您的程式資料的物件,並提供程式設計人員定義的文件類別的基本功能。文件代表資料,使用者通常會開啟 [檔案] 功能表上的 [開啟] 命令,並且會以 [儲存] 指令儲存檔案] 功能表上的單位。
CView (或它的許多) 提供程式設計人員定義的檢視類別的基本功能。檢視附加於文件,並做為文件和使用者之間的中介者:] 檢視會呈現在螢幕上的文件影像和使用者的輸入解譯為作業。檢視也會呈現列印和列印預覽圖像。
CFrameWnd (或其中一項變種) 支援,提供一或多個檢視的文件周圍的圖文框物件。
CDocTemplate (或 CSingleDocTemplate 或 CMultiDocTemplate) 支援的物件,協調一或多個現有的文件給定型別的並管理建立正確的文件、 檢視和框架視窗物件,該型別。
下圖顯示文件和其檢視之間的關係。
文件和檢視
類別庫中的文件/檢視實作區隔資料本身從顯示幕及使用者作業的資料。所有的資料變更都是透過文件類別管理。檢視會呼叫這個介面來存取和更新資料。
文件、 其相關的檢視和框架視窗框住檢視是文件範本所建立的。文件範本負責建立和管理的一種檔案類型的所有文件。