Pionowa architektury/widoku dokumentu
Dokumenty i widoki są skojarzone w typowych aplikacji MFC.Dane są przechowywane w dokumencie, ale widok ma uprzywilejowany dostęp do danych.Oddzielenie dokumentu z widoku oddziela składowania i utrzymania danych od jego wyświetlania.
Uzyskanie dostępu do danych dokumentu z widoku
Uzyskuje dostęp widoku do jej dokumencie danych z GetDocument działa, która zwraca wskaźnik do dokumentu lub tworząc widok, klasa C++ friend klasy dokumentu.Widok następnie używa jej dostępu do danych do uzyskania danych, gdy jest gotowy do rysowania lub w inny sposób manipulowania nim.
Na przykład z widoku OnDraw korzysta z funkcji składowej widoku GetDocument do uzyskania wskaźnika dokumentu.A następnie używa tego wskaźnika dostępu do CString członek danych w dokumencie.Widok przekazuje ciąg do TextOut funkcji.Aby zobaczyć kodu tego przykładu, zobacz rysunku w widoku.
Dane wprowadzone przez użytkownika w widoku
Widok może również interpretować kliknięcie myszą w siebie jako zaznaczenia lub edycji danych.Podobnie go interpretuje nacionięcia klawiszy jako wprowadzania danych lub edycji.Załóżmy, że użytkownik wpisuje ciąg znaków w widoku, który zarządza tekstu.Widok uzyskuje wskaźnik do dokumentu i używa wskaźnika do przekazywania nowych danych do dokumentu, który przechowuje je w niektórych struktury danych.
Aktualizowanie wielu widoków tego samego dokumentu
W aplikacji z wielu widoków tego samego dokumentu — takich jak okno podziału w edytorze tekstów — widok przechodzi najpierw nowe dane do dokumentu.Następnie wywołuje dokumentu UpdateAllViews Członkowskich funkcji, która informuje wszystkie widoki dokumentu do aktualizacji, odzwierciedlających nowe dane.Widoki do synchronizacji.