Dela via


Skapa nya dokument, Windows och vyer

Följande siffror ger en översikt över skapandeprocessen för dokument, vyer och ramfönster. Andra artiklar som fokuserar på de deltagande objekten innehåller ytterligare information.

När den här processen har slutförts finns de samarbetande objekten och lagrar pekare till varandra. Följande siffror visar i vilken ordning objekt skapas. Du kan följa sekvensen från bild till bild.

Diagram som visar sekvensen för att skapa ett dokument.
Sekvens i skapa ett dokument

Diagram som visar sekvensen för att skapa ramfönster.
Sekvens i skapa ett ramfönster

Diagram som visar sekvensen för att skapa en vy.
Sekvens för att skapa en vy

Information om hur ramverket initierar det nya dokumentet, vyn och ramfönsterobjekten finns i klasserna CDocument, CView, CFrameWnd, CMDIFrameWnd och CMDIChildWnd i MFC-biblioteksreferensen. Se även Technical Note 22, som förklarar skapande- och initieringsprocesserna ytterligare under dess diskussion om ramverkets standardkommandon för de nya och öppna objekten på Arkiv-menyn .

Initiera dina egna tillägg till dessa klasser

Föregående siffror tyder också på de punkter där du kan åsidosätta medlemsfunktioner för att initiera programmets objekt. Överrida OnInitialUpdate i din vyklass är det bästa sättet att initiera vyn. Anropet OnInitialUpdate sker omedelbart efter att ramfönstret har skapats och vyn i ramfönstret är kopplad till dokumentet. Om din vy till exempel är en rullningsvy (härledd från CScrollView snarare än CView) bör du ange visningsstorleken baserat på dokumentstorleken i åsidosättningen OnInitialUpdate . (Den här processen beskrivs i beskrivningen av klassen CScrollView.) Du kan åsidosätta medlemsfunktionerna CDocumentOnNewDocument och OnOpenDocument tillhandahålla programspecifik initiering av dokumentet. Normalt måste du åsidosätta båda eftersom ett dokument kan skapas på två sätt.

I de flesta fall bör åsidosättningen anropa basklassversionen. Mer information finns i de namngivna medlemsfunktionerna för klasserna CDocument, CView, CFrameWnd och CWinApp i MFC-biblioteksreferensen.

Se även

Dokumentmallar och processen för att skapa dokument/visa
Skapa dokumentmall
Skapande av dokument/visning
Relationer mellan MFC-objekt