Eine WNDPROC für mehrere Fenster



  • Ich möchte eine WNDPROC-Funktion für mehrere gesubclasste Controls verwenden, aber alterierend, nicht gleichzeitig. Wie kann ich das eine Control wieder von der WNDPROC entfernen, damit ich dann ein neues Control zuweisen kann ?
    1. Control:
    proc_old = (WNDPROC)SetWindowLong( Ctrl_new, GWL_WNDPROC, (LPARAM) WinProc);
    jetzt möchte ich das erste Control aus der Nachrichtenverarbeitung entfernen und z.B. Ctrl_new2 subclassen.



  • Du rufst SetWindowLong einfach ein zweites mal auf. Diesmal setzt Du als WndProc proc_old ein.



  • Original erstellt von x-bay:
    jetzt möchte ich das erste Control aus der Nachrichtenverarbeitung entfernen und z.B. Ctrl_new2 subclassen.

    Wozu? Überleg dir nochmal, ob man das nicht anders machen kann.


Anmelden zum Antworten