[C++] OnItemChanged Fehler

sisela

Erfahrenes Mitglied
Hallo,

ich habe eine Oberfläche mit drei Listen und dementsprechend auch 3 OnItemChanged...() Funktionen. Nun kommt es ab und zu vor (leider nicht wirklich nachvollziehbar), dass das Programm bei einem Klick auf so eine Liste abstürzt.
Im Debug Modus habe ich dann erkannt, dass sich die Funktionen anscheinend immer gegenseitig aufrufen bis es einen Speicherüberlauf gibt.

Hat jemand eine Idee, wieso das passiert oder wie man es verhindern kann.

mfg
 
Das OnItemChanged kommt leider recht häufig; nicht nur bei Mausklicks, sondern auch, sobald man mit SetItemState rumspielt.

Da hilft dann fast nur ein bool Flag, dass man vor dem Aufruf setzt und danach wieder löscht. OnItemChanged wird dann einfach mit return verlassen, wenn das Flag gesetzt ist.
 
Hi endurion,

so habe ich mir jetzt auch geholfen. Wenn eine OnItemChange..() Funktion aufgerufen wird, frage ich zunächst die mausposition ab. Ist es nicht die richtige gibt es gleich ein return.

Aber irgendwie schon komisch!

naja aber es funktioniert...
 

Neue Beiträge

Zurück