共用方式為


文件/檢視架構的簡介

在一般 MFC 應用程式中文件和檢視是成對的。 資料會儲存在文件中,不過檢視具有資料的存取權限。 將文件從檢視中分離,會將資料的儲存和維護從其顯示分隔開來。

從檢視獲得文件資料的存取權

檢視會使用 GetDocument 函式來存取其檔的資料,該函式會傳回檔的指標,或讓檢視類別成為檔類別的 C++ friend 。 當檢視準備繪製或進行操作時,會利用其資料存取權來取得資料。

例如,從檢視的 OnDraw 成員函式,檢視會使用 GetDocument 來取得檔指標。 然後,它會使用該指標來存取文件中的 CString 資料成員。 檢視會傳遞字串至 TextOut 函式。 若要查看此範例的程式碼,請參閱 在檢視 中繪製。

使用者輸入到檢視

檢視也會其本身內將按一下滑鼠動作解譯為選取或編輯資料。 同樣地,也可以將按鍵輸入解譯為資料輸入或編輯。 假設使用者在管理文字的檢視中輸入字串。 檢視會取得文件的指標,並使用指標將新資料傳遞至文件 (以某些資料結構儲存資料)。

更新相同文件的多個檢視

在具有相同檔之多個檢視的應用程式中,例如文字編輯器中的分隔器視窗,檢視會先將新資料傳遞至檔。 然後它會呼叫檔的 UpdateAllViews 成員函式,以告知檔的所有檢視自行更新,以反映新的資料。 這會同步處理檢閱。

您想要深入瞭解什麼

另請參閱

檔/檢視架構