Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Kärnan i MFC-ramverket är begreppen dokument och vy. Ett dokument är ett dataobjekt som användaren interagerar med i en redigeringssession. Den skapas av kommandot Ny eller Öppna på arkiv-menyn och sparas vanligtvis i en fil. (Standard MFC-dokument, härledda från klass CDocument, skiljer sig från Aktiva dokument och OLE-sammansatta dokument.) En vy är ett fönsterobjekt genom vilket användaren interagerar med ett dokument.
Nyckelobjekten i ett program som körs är:
Trådobjekt
Om ditt program skapar separata körningstrådar, till exempel för att göra beräkningar i bakgrunden, använder du klasser som härletts från
CWinThread.CWinApphärleds frånCWinThreadoch representerar huvudtråden (eller huvudprocessen) i ditt program. Du kan också använda MFC i sekundära trådar.Programobjektet
Din programklass (härledd från
CWinApp) styr alla objekt ovan och anger programbeteende, till exempel initiering och rensning. Programmets enda programobjekt skapar och hanterar dokumentmallarna för alla dokumenttyper som programmet stöder.Dokumentmallen eller mallarna
En dokumentmall samordnar skapandet av dokument, vyer och ramfönster. En viss dokumentmallsklass, härledd från klassen
CDocTemplate, skapar och hanterar alla öppna dokument av en typ. Program som stöder mer än en typ av dokument har flera dokumentmallar. Använd CSingleDocTemplate för SDI-program eller använd klassenCMultiDocTemplateför MDI-program.Ramfönstren
Vyer visas i "dokumentramfönster". I ett SDI-program är dokumentramsfönstret också "huvudramsfönstret" för programmet. I ett MDI-program är dokumentfönster underordnade fönster som visas i ett huvudramfönster. Din härledda huvudrutefönsterklass anger format och andra egenskaper för de ramfönster som innehåller dina vyer. Om du behöver anpassa ramfönster kan du härleda från
CFrameWndför att anpassa dokumentramfönstret för SDI-program. AnvändCMDIFrameWndför att anpassa huvudramfönstret för MDI-program. Härled även en klass frånCMDIChildWndför att anpassa varje distinkt typ av MDI-dokumentramfönster som programmet stöder.Dokumentet eller dokumenten.
Dokumentklassen (härledd från
CDocument) anger programmets data.Om du vill ha OLE-funktioner i ditt program kan du härleda dokumentklassen från
COleDocumenteller någon av dess härledda klasser, beroende på vilken typ av funktionalitet du behöver.Vyn eller vyerna.
Din vyklass (härledd från
CView) är användarens "fönster på data". Vyklassen styr hur användaren ser dokumentets data och interagerar med dem. I vissa fall kanske du vill att ett dokument ska ha flera vyer av data.Om du behöver scrolla bör du härleda från
CScrollView. Om din vy har ett användargränssnitt som är lagt ut i en dialogmallsresurs, ska den härledas frånCFormView. För enkla textdata använder eller härleder du frånCEditView. För ett program för dataåtkomst baserat på formulär, som ett datainmatningsprogram, använd en härledning frånCRecordView(för ODBC). Det finns även klasserCTreeView,CListViewochCRichEditView.
I ett program som körs svarar dessa objekt tillsammans på användaråtgärder som binds samman av kommandon och andra meddelanden. Ett enda programobjekt hanterar en eller flera dokumentmallar. Varje dokumentmall skapar och hanterar ett eller flera dokument (beroende på om programmet är SDI eller MDI). Användaren visar och ändrar ett dokument via en vy som finns i ett ramfönster. Följande bild visar relationerna mellan dessa objekt för ett SDI-program.
              
              
            
Objekt i ett SDI-program som körs
Resten av den här serien med artiklar förklarar hur ramverksverktygen, MFC-programguiden och resursredigerarna skapar dessa objekt, hur de fungerar tillsammans och hur du använder dem i din programmering. Dokument, vyer och ramfönster beskrivs mer detaljerat i Fönsterobjekt och Arkitektur för dokument/vy.