Anfängerfrage:MSN-Library->Programmierung

Fanprog

Grünschnabel
Hi ich habe eine allgemeine Frage.

In einem Beispiel habe ich gelesen, wie eine Haupt- 'Fenster', abgeleitet aus der Klasse (CFrameWnd), mit der Membervariable m_pMainWnd innerhalb der virtuellen Funktion InitInstance erstellt/verknüpft wird.

Code:
	BOOL bReturnCode = ((CMainWnd*) m_pMainWnd)->Create(lpClassName,"Haupt - Fenster");

In der Hilfe lese ich:

" CWnd::Create
virtual BOOL Create( LPCTSTR lpszClassName, LPCTSTR lpszWindowName, DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID, CCreateContext* pContext = NULL); "

Dies entspricht vermutlich der Funktion hinter dem Pointer CMainWnd* ---- wie kann ich jedoch aus der MSDN-Library ableiten dass die Funktion so wie s.o. ertsellt werden muss?

Es hat bei mir natürlich Funktioniert, weil ich das Beispiel gelesen bzw. abgeschrieben habe. Nur! wie kann oder wie sollte mann vorgehen, damit man aus der Hilfe oder Library den größten Nutzen ziehen kann.

Verwende VC++ 6.0 - wenn ich es gelernt habe gibt es vermutlich schon VC'Hoch3'2010 :) Grundkenntnisse in C++ sind vorhanden.

Vielen Dank
 
CWnd::Create() ist der Methode der übergeordneten Klasse. Du musst dir aber CFrameWnd::Create() anschauen. Dabei wirst du feststellen, dass alle Parameter außer "lpszClassName" und "lpszWindowName" mit Standardwerten vorbelegt sind. Damit brauchen nur 2 Parameter verwendet zu werden; die anderen können bei Bedarf (falls die Standardwerte nicht passen sollten) benutzt werden.

Gruß
MCoder
 
Hallo MCoder,

vielen Dank für deine Antwort.
Das habe ich jetzt soweit verstanden: nur ich bin in VC++ noch Neuling. Was ich noch nicht verstanden habe ist diesen Code-Abschnitt "BOOL bReturnCode = " bzw. ich weiß nicht, wie ich diese Funktion aus der MSDN Library , im Zusammenhang mit Hauptfenster erstellen, hätte ableiten/rausfinden können.

Gruß
Fanprog
 
Hallo Fanprog,

ich bin mir nicht sicher, ob ich dein Problem richtig verstanden habe, aber dir geht wohl hauptsächlich darum, zu wissen, warum an der Stelle z.B. gerade die Methode "Create()" aufgerufen werden muss und weniger wie sie funktioniert?

Die MSDN ist eine hervorragende Referenz, aber als Einsteigertutorial wohl nicht so gut geeignet. Um erst mal die Grundlagen mitzubekommen, solltest du dir eins der der zahlreichen MFC-Tutorials suchen und dich damit in die Materie einarbeiten. Wenn man erst mal ein Verständnis dafür entwickelt hat, wie die MFC so "tickt", kann bei Fragen auch viel gezielter und effektiver in der MSDN nach Lösungen suchen.

Gruß
MCoder
 

Neue Beiträge

Zurück