Callback - wie funktioniert das ?
-
linus, so würdest du es machen wenn du mit der WinAPI programmierst, aber nicht unter MFC.
-
Danke für dei schnelle Antwort.
LRESULT CALLBACK WndProc(HWND hDlg,unsigned int uiMsg,WPARAM WParam,LPARAM LParam) { switch(uiMsg) { case WM_KEYDOWN: MessageBox(NULL,"Taste",NULL,MB_OK); break; case WM_MOUSEMOVE: MessageBox(NULL,"MAUS",NULL,MB_OK); break; } return TRUE; }
Ich hab bisher noch nichts weiter gemacht als eine MFC-Anwendung erstellt mit der Ansichtsklasse Formview und diese Funktion in der Datei [Dateiname]view.cpp
unter // Messagehandler
eingegeben.@ Tja
Ich habe bisher nur Informationen dieser art gefunden . Was macht man denn unter MFC anders?Danke
Gruß Linus
-
Also bei MFC kann ich dir nicht weiterhelfen. Dort muss man irgendwelche "Message Maps" (kannst du mal nach googlen) anlegen oder Memberfunktionen überschreiben.
Aber das was du da hast ist definitiv reine WinAPI.
-
Jo, reine WinAPI. Und deswegen frage ich mich, was das hier zu suchen hat ...
-
Dieser Thread wurde von Moderator/in dEUs aus dem Forum MFC mit dem Visual C++ in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
dEUs, ich glaube das mit dem Verschieben war falsch. Weil er hat ja gesagt das er eine "SDI - Formview Anwendung" hat, und das ist definitiv MFC
-
ich glaube mir dämmerts langsam
Kann es vielleicht sein , dass man die Callback-Funktion bei MFC gar nicht verwendet , sondern nur die jeweiligen Funktionen überschreibt ?
Na dann Prost.
Danke Linus
PS Das Posting kam jetz ein bischen spät (
War am telefonieren)
-
Woher soll die MFC auch *deine* Callback-Funktion kennen? Das ist unmöglich.
-
Das war ja genau das Problem
irgendwie hab ich die Logik dahinter nicht verstanden
Und nirgendo stand , das das reine WinApi ist.
Man lernt nie aus.Auf alle Fälle Danke
Linus
-
@tja:
Habe seinen Text nicht gelesen, nur den Quellcode angeschaut. Der war definitiv WinAPI.
-
tja, bevor man sich als Moderator entschließt einen Thread zu verschieben sollte man vielleicht Text und Source durchlesen.
-
Nö, wir Moderatoren haben hier diktatorische Vollmachten, insofern ist es egal, was wir machen, es ist eh richtig! :p
-
ich würde die mods einfach ignorieren und nochmal posten.
-
Dieser Thread wurde von Moderator/in flenders aus dem Forum WinAPI in das Forum MFC mit dem Visual C++ verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Tja, deine Funktion ist schon gut, aber die MFC weiß davon ja nichts.
Im Klassenassistenten kannst du aber die Funktion "PreTranslateMessage" und noch eine andere (leider vergessen; aber die Beschreibung hilft dir sicher..) in deiner Klasse einbinden.
PreTranslateMessage (und die andere) sind genau so aufgebaut wie "deine" WndProc.
D.H. Da kannst du auch alles abfangen was in deiner Anwedung rumgeschickt wird.Viel Erfolg!
-
Das hört sich gut an
werde es gelich mal ausprobierenDanke
Gruß Linus