Funktioniert so die MFC?
-
So stelle ich mir das vor:
z.B.:Ich erstelle mir ein CWnd-Objekt. Dann ruf ich Create auf um das Fenster zu erstellen. Damit ich dann die Nachrichten behandeln kann in der Klasse müssen die Nachrichten von der WndProc zur Klasse umgeleitet werden. Wird das wirklich über Maps gemacht?
So stelle ich mir das im Prinzip vor:
CMap<HWND,HWND,CWnd*,CWnd*> globalWndMap; BOOL CWnd::Create() { m_hWnd = CreateWindow(...); SubclassWnd(m_hWnd); globalWndMap[m_hWnd] = this; } LRESULT CALLBACK MyWndProc(HWND hwnd,...) { CWnd* pWnd; if(globalWndMap.Lookup(hwnd,pWnd)) pWnd->DefWindowProc(hwnd,...); }
Ist das so?
[ Dieser Beitrag wurde am 27.11.2002 um 10:50 Uhr von Nemesyzz editiert. ]
-
Wieso schaust Du net selber nach
Man nehme den Befehl FromHandle und finde
CHandleMap-> die Antwort: Ja
-
Ich dachte immer das die Funktion nur die Temporären Klassen (falls nötig) an eine Liste dranhängt.
Aber in der Map sind ja beide mit drin (permanentMap und temporaryMap)
Jdf. - Danke!