Sdílet prostřednictvím


Vztahy mezi objekty MFC

Pokud chcete umístit procesu vytváření dokumentu/zobrazení Perspektiva, zvažte spuštěný program: dokument, okno rámce, který obsahuje zobrazení a zobrazení přidružené k dokumentu.

  • Dokument, vede seznam zobrazení dokumentu a ukazatel do šablony dokumentu, které byl dokument vytvořen.

  • Zobrazení uchovává ukazatel na jeho dokument a je podřízen jeho nadřazené okno rámce.

  • Rámeček okna dokumentu ponechá ukazatel aktuální aktivní zobrazení.

  • Šablona dokumentu uchovává seznam svých otevřených dokumentů.

  • Aplikace uchovává seznam šablony dokumentu.

  • Systém Windows uchovává informace o všech otevřených oken odesílání zpráv na ně.

Tyto vztahy jsou vytvořeny během vytváření dokumentu/zobrazení.Následující tabulka ukazuje, jak lze objekty v provozní aplikaci přistupovat k jiným objektům.Libovolný objekt lze získat ukazatel na objekt aplikace pomocí volání globální funkce AfxGetApp.

Získání přístupu k jiným objektům v aplikaci

Z objektu

Jak přistupovat k jiným objektům

Dokument

Použití GetFirstViewPosition a GetNextView k přístupu k seznamu zobrazení dokumentu.

Volání GetDocTemplate získat šablonu dokumentu.

View

Volání GetDocument k získání dokumentu.

Volání GetParentFrame Chcete-li získat okna rámce.

Rámeček okna dokumentu

Volání GetActiveView Chcete-li získat aktuální zobrazení.

Volání GetActiveDocument Chcete-li dokument připojený k aktuální zobrazení.

Okno MDI

Volání MDIGetActive Chcete-li získat aktuálně aktivní CMDIChildWnd.

Obvykle má rámeček okna jedno zobrazení, ale někdy, jako rozdělovač windows stejné okno obsahuje více zobrazení.Okno rámce ponechá ukazatel aktivní zobrazení; ukazatel je aktualizován při každém jiné zobrazení, je aktivována.

[!POZNÁMKA]

Ukazatel na hlavní okno rámce je uložena v m_pMainWnd členské proměnné objektu application.Volání OnFileNew ve vaší přepsané InitInstance členské funkce CWinApp nastaví m_pMainWnd pro vás.Pokud nezavoláte OnFileNew, je nutné nastavit hodnotu proměnné InitInstance sami. (Aplikace SDI COM komponenty (server) se nemusí nastavit proměnnou, je-li /Embedding na příkazovém řádku.) Všimněte si, že m_pMainWnd je nyní členem třídy CWinThread spíše než CWinApp.

Viz také

Koncepty

Šablony dokumentů a proces tvorby v modelu dokument/zobrazení

Vytváření šablon dokumentů

Vytváření dokumentů/zobrazení

Vytváření nových dokumentů, oken a zobrazení