callback funktionen

Alles rund um die Programmierung mit Qt
Antworten
CaptnChaos
Beiträge: 605
Registriert: 28. Juni 2007 15:01
Kontaktdaten:

callback funktionen

Beitrag von CaptnChaos »

Hi!
kann man callback funktionen in einer klasse definieren?
so zB:
in der header:

Code: Alles auswählen

LRESULT CALLBACK hookProcess(int nCode, WPARAM wParam, LPARAM lParam);
in der cpp:

Code: Alles auswählen

LRESULT CALLBACK MouseTracker::hookProcess(int nCode, WPARAM wParam, LPARAM lParam){code...}
was muss man dann beachten? weil so geht es nicht... der compiler meckert dann...
wenn ich das in eine funktion ausserhalb der klasse packe, funktioniert alles einwandfrei, dann kann ich jedoch nicht mehr auf elemente der klasse zugreifen, was sein muss...
Wie kann ich das also machen?
iaby
Beiträge: 53
Registriert: 10. Februar 2007 13:12

Beitrag von iaby »

Geht es wenn du die Funktion als "static" deklarierst?
CaptnChaos
Beiträge: 605
Registriert: 28. Juni 2007 15:01
Kontaktdaten:

Beitrag von CaptnChaos »

ja hab ich auch grad gemerkt.
um dann auf die internen Variabeln zugreifen zu können, muss man ein statische variable der klasse erzeugen:

.h:

Code: Alles auswählen

static MouseTracker* hInstance;
ind der cpp vor dem Konstruktor:

Code: Alles auswählen

MouseTracker* MouseTracker::hInstance = 0;
Danke Trotzdem!
iaby
Beiträge: 53
Registriert: 10. Februar 2007 13:12

Beitrag von iaby »

Du bekommst dann eben nur Probleme, wenn du mehrere Instanzen dieser Klasse erzeugst, falls du das überhaupt vorhast...
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Und was hat das ganze hier mit Qt zu tun??? :roll:
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
CaptnChaos
Beiträge: 605
Registriert: 28. Juni 2007 15:01
Kontaktdaten:

Beitrag von CaptnChaos »

nööx :D
aber da ihr alle c++ programmiert müsstet ihr so fragen wissen^^
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Ich denke, daß die meisten hier auch Autofahrer sind und trotzdem hier keine Auto-Themen beantworten werden.
Antworten