wxWidgets: Funtion eines Parent-Frames aufrufen
-
Hallo,
ich habe ein Frame, das ein Notebook enthält.
Dieses enthält wiederum verschiedene Panels.
Wie kann ich nun aus diesen Panels heraus eine Funktion des Frames aufrufen?Danke
-
Du könntest in den Panels einen Pointer für den Frame anlegen:
im Panel .h:
MeinFrame *m_pMeinFrame;und im Frame, da wo Panel angelegt wird:
pMeinPanel = new wxPanel(....)
pMeinPanel->m_pMeinFrame = this;dann kannst du über m_pMeinFrame->... vom Panel aus auf alles im Frame zugreifen.
-
Oder einfach solange GetParent() machen, bis du bei deinem Frame angekommen bist:
wxWindow* parent = GetParent(); while (parent) { MyFrameType* f = dynamic_cast<MyFrameType*>(parent); if (f) { // Gotcha f->Whatever(); break; } parent = parent->GetParent(); }