Udostępnij za pośrednictwem


Relacje między obiektami MFC

Aby umieścić proces tworzenia dokumentu/widok perspektywy, należy wziąć pod uwagę uruchomionego programu: dokument, okno ramek zawiera widok i widok skojarzony z dokumentem.

  • Dokument przechowuje listę widoków tego dokumentu i wskaźnik do szablonu dokumentu, który utworzył dokument.

  • Widok zachowuje wskaźnik do jego dokumentu i jest podrzędny wobec jego nadrzędnej ramce okna.

  • Ramka okna dokumentu zachowuje wskaźnik do jej bieżącego widoku aktywnego.

  • Szablon dokumentu przechowuje listę otwartych dokumentów.

  • Aplikacja przechowuje listę jej szablonów dokumentów.

  • Aby wysyłać wiadomości do nich system Windows przechowuje informacje o wszystkich otwartych okien.

Te relacje są ustanawiane podczas tworzenia widoku/dokumentu.W poniższej tabeli przedstawiono, jak obiekty w uruchomionym programie dostępu do innych obiektów.Dowolny obiekt można uzyskać wskaźnik do obiektu aplikacji przez wywołanie funkcji globalnej AfxGetApp.

Uzyskanie dostępu do innych obiektów w aplikacji

Z obiektu

Jak uzyskać dostęp do innych obiektów

Dokument

Użyj GetFirstViewPosition i GetNextView na liście Widok dokumentu dostęp do.

Wywołanie GetDocTemplate pobrać szablon dokumentu.

Widok

Wywołanie GetDocument celu uzyskania dokumentu.

Wywołanie GetParentFrame uzyskać okno ramek.

Okna dokumentu w ramce

Wywołanie GetActiveView Aby uzyskać bieżący widok.

Wywołanie GetActiveDocument dokumentu w dołączonych do bieżącego widoku.

MDI ramki okna

Wywołanie MDIGetActive uzyskać aktualnie aktywnych CMDIChildWnd.

Zazwyczaj okno ramki ma jeden widok, ale czasami, jak w systemie windows rozdzielacza, tym samym oknie ramka zawiera wiele widoków.Okno ramek zachowuje wskaźnik do aktualnie aktywnego widoku; wskaźnik jest aktualizowana w dowolnym momencie uaktywnieniu innego widoku.

[!UWAGA]

Wskaźnik do okna głównego ramki jest przechowywana w m_pMainWnd zmienną obiektu aplikacji.Wywołanie OnFileNew w sieci zastępująca InitInstance Członkowskich funkcji CWinApp ustawia m_pMainWnd dla Ciebie.Jeśli nie wywoła OnFileNew, należy ustawić wartość zmiennej InitInstance samodzielnie.(Aplikacji (serwer) składnika SDI COM może nie ustawia zmiennej, jeśli w wierszu polecenia jest za). Należy zauważyć, że m_pMainWnd jest teraz członkiem klasy CWinThread zamiast CWinApp.

Zobacz też

Koncepcje

Szablony i proces tworzenia dokumentu/widoku dokumentów

Tworzenie szablonu dokumentu

Tworzenie widoku/dokumentu

Tworzenie nowych dokumentów, Windows i widoków