Een Windows-besturingssysteem wordt bericht gedreven omgeving . Een evenement als een muisklik of een printer signaal stuurt een bericht naar de actieve toepassing die op zijn beurt zorgt voor de boodschap . De Microsoft Foundation Class ( MFC ) Bibliotheek ondersteunt een bericht driven programmeermodel . De centrale component is de Boodschap Kaart . Hier , de OnLButtonDown functie verwerkt linker muisklikken in de CMyWindow klasse . Wat je nodig hebt Microsoft Visual Studio IDE ( Integrated Development Environment ) op Twitter Boek over Visual C + + , zoals , Programmeren Windows Met MFC door Jeff Prosise Toon Meer Aanwijzingen 1 Start uw Microsoft Visual Studio . Voor dit voorbeeld Visual C + + 6.0 werd gebruikt . Kopen van 2 Maak een Win32-toepassing project . Klik op Bestand , Nieuw , Projecten en vervolgens " Win32-toepassing " . Voer een willekeurige naam in het " Project naam " tekstvak . In de tweede pagina van de wizard selecteert u " Een lege project" . Klik op Voltooien en klik op OK . Dit project heeft geen standaard -bestanden . 3 Voeg een bronbestand aan het project . Klik op Project , " In Project , " Nieuw en selecteer vervolgens " C + + Source File " . Geef het bestand een naam in het "File name" tekstvak . Klik op "OK . " 4 Kopieer en plak de volgende code op het bronbestand : beelden # omvatten klasse CMyWindow : openbare CFrameWnd { openbaar : < br > CMyWindow ( ) op { Create ( NULL , " MFC Message Map Demo " ) ; } leegte OnLButtonDown ( UINT vlaggen , CPoint punt ) ; DECLARE_MESSAGE_MAP ( ) op } ; BEGIN_MESSAGE_MAP ( CMyWindow , CFrameWnd ) op Twitter ON_WM_LBUTTONDOWN ( ) op END_MESSAGE_MAP ( ) leegte CMyWindow :: OnLButtonDown ( UINT vlaggen , CPoint punt ) op { CFrameWnd :: OnLButtonDown ( vlaggen , punt ) ; MessageBox ( " Linker knop geklikt " ) ; } klasse MyApp : openbare CWinApp { CMyWindow * pMyWin ; < br > publiek : BOOL InitInstance ( ) op { pMyWin = new CMyWindow ( ) ; m_pMainWnd = pMyWin ; m_pMainWnd - > ShowWindow ( 1 ) ; return 1 ; < br > } } ; MyApp theApp ; 5 Begrijpen wat de code betekent : DECLARE_MESSAGE_MAP : deze macro vertelt de toepassing die de klasse die het bevat , in dit geval " CMyWindow " , heeft een boodschap kaart en kan berichten verwerken . Alleen klassen afgeleid van CCmdTarget kan uitvoeren boodschap kaarten BEGIN_MESSAGE_MAP & END_MESSAGE_MAP : . Deze macro's kunnen worden gezien als de open dicht beugels van een boodschap kaart . " BEGIN_MESSAGE_MAP " heeft twee parameters , de naam van de klasse die gastheer is van de boodschap kaart , in dit geval " CMyWindow " , en haar directe voorouder , " CFrameWnd " ON_WM_LBUTTONDOWN : . Dit is de specialiteit macro die aangeeft dat CMyWindow handvatten linker muisklikken via de functie OnLButtonDown . Wanneer een linker muisklik wordt geassocieerd met CMyWindow de OnLButtonDown klasse wordt automatisch opgeroepen . 6 Klik en uitvoeren van het programma . Klik op " Build " op het menu en " Compile programmanaam " . Wacht tot het compileert . Klik op " Build " en "Execute programmanaam " .
|