Hallo zäme, jo, ich hab von wxWidgets noch keine Ahnung und parallel schaue ich, ob ich meine Frage selbst beantworten kann - habe mein Anliegen noch nicht auf die Doku abbilden können. Ich suche ein wxWidget Konstrukt, mit dem durch Aufruf im Sinne eines >Dispatch_ShowCall(myClassType_1* caller) >Dispatch_ShowCall(myClassType_2* caller) UIs für verschiedene caller im selben Bildschirmbereich exklusiv dargestellt/aufgerufen werden. In wxWidgets scheint es auch ein Konzept von Show() und Hide() zu geben. Wobei ich noch nicht weiß, ob es funktional das gleiche ist wie in Qt. Ich könnte versuchen, eine Verwaltung zu bauen, welche das letzte "ge-show´te" UI versteckt und das UI des callers show´et (entschuldigt das Denglish) > Die Frage ist, ob es eine wxWidget Klasse gibt, welche das nativ lösen kann In Qt habe ich das mit einem StackedWidget gelöst. vielen Dank schon ma
Daniel Larousso schrieb: > Ich könnte versuchen, eine Verwaltung zu bauen, welche das letzte > "ge-show´te" UI versteckt und das UI des callers show´et (entschuldigt > das Denglish) Nee, beim besten Willen, das ist nicht mehr zu entschuldigen. Das verursacht Augenkrebs. Wir haben bereits vor geraumer Zeit eine recht gut funktionierende Sprache entwickelt. Zu den wxWidgets (und falls ich das richtig verstanden habe): Da die UI dynamisch aufgebaut wird, löse ich das dahingehend, das ein Widget entfernt und durch ein neues Widget ersetzt wird. Braucht einen Funktionsaufruf um das Layout neu zu formatieren wenn die Größen nicht übereinstimmen.
Ok, was bedeutet das technisch
>das ein Widget entfernt und durch ein neues Widget ersetzt wird.
Geht es da um eine wx-eigene Methode oder meinst du manuell das
Child-widget deleten und durch ein neues ersetzten?
Bzw. funktioniert der Ansatz so, bei jedem Wechsel ein delete / new ?
Ich mach's mit wxPython (aber das ist ja von der Funktionalität nahezu identisch) Einem Sizer kann man mit der .Add Methode ein Widget hinzufügen. Da gibt's auch eine passende .Remove Methode. Die Widgets selbst müssen nicht zerstört werden, wenn man sich einfach die Referenzen aufhebt. (Der Umwelt zuliebe)
Ok danke, witzig ich bin auch gerade an einem Tutorial über Sizer vorbeigekommen und da ist mir auch die ->Add() Methode aufgefallen und war schon auf dem Weg zu schauen, ob es ein Remove gibt. Wenn es schon jemand anderes so macht, ist wohl nicht total abwegig.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.