ZUGRIFFSVERWEIGERUNG bei Aufruf virtueller Funktionen
-
Hallo zusammen,
ich habe einen Code in folgender Form:
[cpp]#include "stdafx.h" MCApplication app; MCFrame frmMain; MCButton cmdTest; class EHCmdTest : public MCEventHandler { public: RESULT onClick() { info.window->InfoBox("Clicked the Button!", "Click"); return 0; } RESULT onUnknownMessage() { return MessageBox(info.hWnd, "Button unknown", "", NULL); } } cmdTestHandler; class EHfrmMain : public MCEventHandler { } frmMainHandler; int main(int argc, char* argv[]) { app.add(&frmMain); frmMain.add(&cmdTest); frmMain.eventHandlerSet(&frmMainHandler); frmMain.textSet("Mein Testprogramm"); [b]cmdTest.eventHandlerSet(&cmdTestHandler);[/b] cmdTest.textSet("Start"); cmdTest.positionSet(50, 50); app.run(); } [/cpp]Jetzt habe ich dann irgendwo in der Basisklasse von MCButton (die heißt bei mir dann MCWindow) den Aufruf:
[cpp] this->eventHandler->onClick();[/cpp]wobei eventHandler ein Zeiger auf MCEventHandler ist, der durch eventHandlerSet gesetzt wird.
Der onClick-Aufruf scheitert aber und ich bekomme eine Zugriffsverletzung.
Was mache ich da falsch???Viele Grüße,
Matthias
-
Zeig mal eventHandlerSet()