wxWidgets Funktionsweise?
-
Wie gesagt, also ich würde gern wissen wie bei WxWidgets der Einsprunppunkt für ein Programm liegt! Nur aus reinem Interesse, da ich bezweifele, dass es sich um die int main(); oder int WinMain(); handelt, also kann mir meine Frage einer hier beantworten?
-
eigentlich ist es schon die winMain (unter windows), aber da sie bereits in der
wx Bibliothek vorhanden ist, sieht man nichts davon.Stattdessen erstellt man eine eigene Klasse und leitet diese von wxApp ab.
Dabei überschreibt man die virtuelle Methode OnInit(), welche dann den
eigentlichen Einstiegspunkt bildet:#ifndef MY_APP_HPP #define MY_APP_HPP #include <wx/wx.h> class myApp : public wxApp { bool OnInit(); }; #endif //MY_APP_HPP
Als nächstes muss dann in der zugehörigen cpp-Datei das Makro
IMPLEMENT_APP aufgerufen werden, als Parameter gibt man seine
eigene Klasse mit:#include "myApp.hpp" IMPLEMENT_APP(myApp) bool myApp::OnInit() { // so, und hier befindet sich jetzt der Einstiegspunkt ins Programm return false; // false beendet das Programm, true nicht (oder wars umgekehrt?) }
-
achso aber der kapselt die winmain() so, dass man das ganze System auch auf (zum Beispiel) Linux portieren kann? Also ist die WinMain doch nicht vorhanden, interessant interessant. Außerdem auch danke für die kurze Einführung!