WNDPROC - Frage... o_O
-
Hallo!
Ich habe ein Klassenmodul für alle wichtigen GUI-Elemente erstellt. Da ist nur ein einziges problem beim Fenster-Objekt...
Ich muss einer function die adresse der callback-function des fensters zur laufzeit übergeben. Wie kann ich einen Pointer auf eine WNDPROC-function erzeugen?? Mehrere Versuche haben zu diversen Fehlern geführt.
Ich wäre für ideen und beispiele dankbar.Mfg, Tolga
-
Du übergibst einfach die Adresse der Funktion.
LRESULT CALLBACK WindowProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { // ... } void foo() { // Dem Zeiger p wird zur Laufzeit die Adresse von WindowProc zugewiesen. WNDPROC p = &WindowProc; }
-
Dabei muss allerdings die WndProc als static deklariert sein.
-
Siehe FAQ