wxWidgets: Wie Funktionsaufrufe mit Connect(...)?
-
Hallo,
ich möchte nach einem Klick auf einen Button eine Funktion aufrufen, allerdings nicht statisch, sondern die Instanz auf die Klasse. Allerdings scheint der Event-Handler nur statische Objekte ansprechen zu können oder geht es auch anders?
Hier mal mein Code:
Klasse* klasse = new Klasse(); Connect(idKlasseCreate, wxEVT_COMMAND_BUTTON_CLICKED, sunsystem->doSomething());
Allerdings sagt der Compiler: "Invalid use of void expression". Aber es ist eine void-Funktion und Connect verlangt doch keinen Rückgabewert,oder doch?
Oder muß das nach einem bestimmten wxObjectEvent... gecastet werden?
Vielen Dank schon mal für eure Hilfe.
Gruß,
Tobias
-
Falls du noch keinen Blick in die Doku geworfen haben solltest, hier :
http://docs.wxwidgets.org/trunk/classwx_evt_handler.html
Connect ist immer eine Funktion des wxEvtHandler, der die dahinterliegende Funktionalität der wxEventLoop kapselt.
Sir_Tobias schrieb:
Connect(idKlasseCreate, wxEVT_COMMAND_BUTTON_CLICKED, sunsystem->doSomething());
Stellt sich die spannende Frage was in der Doku mit "wxObjectEventFunction" gemeint ist.
Ein Tip noch :
Funktionsaufruf != Funktionspointer
-
So wärs richtig:
Connect (wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (klasse::dosomething));
Ansonsten die Seite nurf beachten.
MfG
Yoschi