Seite 1 von 1

SashLayoutWindow und Panels

Verfasst: Donnerstag 18. Mai 2006, 12:28
von george
Hey,

ich habe ein SashLayoutWindow und möchte in diesem, abhängig von der Usereingabe, verschiedene Panels darstellen.

Zum Beispiel selektiert der User "Device1", wird das Panel1 mit den Einstellparametern für das "Device1" dargestellt. Der Anwender kann dann die Parameter einstellen. Selektiert er "Device2" verschwindet das Panel1 und das Panel2 wird geladen indem er wiederum alle Parameter einstellen kann.
Selektiert der Anwender erneut den Eintrag "Device1", soll Panel2 verschwinden und das alte Panel1, mit den bereits eingetragenen Parametern, dargestellt werden.

Meine Frage ist, kann man die Panels einmal virtuell erzeugen und dann jeweils dem SashLayoutWindow zum Anzeigen übergeben??? Der reguläre Weg ist beim Erzeugen des Panels ist ja, dass man dem Panel-Konstruktor den Parent(in diesem Fall das SashLayoutWindow) mitgeben muss.
Ich suche aber einen Lösungsweg, mit dem man die Panels erzeugt und dann abhängig von der Usereingabe die Panels ins SashLayoutWindow bindet oder wieder freigibt.

Ich hoffe, dass mein Problem einigermaßen verständlich ist und ihr mir helfen könnt.
Danke

george

Re: SashLayoutWindow und Panels

Verfasst: Donnerstag 18. Mai 2006, 13:19
von Francesco
george hat geschrieben:Hey,

ich habe ein SashLayoutWindow und möchte in diesem, abhängig von der Usereingabe, verschiedene Panels darstellen.

Zum Beispiel selektiert der User "Device1", wird das Panel1 mit den Einstellparametern für das "Device1" dargestellt. Der Anwender kann dann die Parameter einstellen. Selektiert er "Device2" verschwindet das Panel1 und das Panel2 wird geladen indem er wiederum alle Parameter einstellen kann.
Selektiert der Anwender erneut den Eintrag "Device1", soll Panel2 verschwinden und das alte Panel1, mit den bereits eingetragenen Parametern, dargestellt werden.

Meine Frage ist, kann man die Panels einmal virtuell erzeugen und dann jeweils dem SashLayoutWindow zum Anzeigen übergeben??? Der reguläre Weg ist beim Erzeugen des Panels ist ja, dass man dem Panel-Konstruktor den Parent(in diesem Fall das SashLayoutWindow) mitgeben muss.
Ich suche aber einen Lösungsweg, mit dem man die Panels erzeugt und dann abhängig von der Usereingabe die Panels ins SashLayoutWindow bindet oder wieder freigibt.

Ich hoffe, dass mein Problem einigermaßen verständlich ist und ihr mir helfen könnt.
Danke

george
Hi, eine Frage:
Warum muss das ein SashLayoutWindow sein?
(ich kenne mich da auch nicht so aus, aber würde es ein SplitterWindow
nicht auch tun?)
Im linken ist dann dann die Listbox oder was auch immer, mit der du
die "Devices" auswählst und rechst schaltest du dann das aktive Panel
in den Vordergrund und versteckst das letzte Fenster mit .Hide() oder so.

Nur ein Gedanke.

Re: SashLayoutWindow und Panels

Verfasst: Donnerstag 18. Mai 2006, 13:33
von Francesco
Vielleicht würde auch ein ListBook passen.
Im Demo unter Core Windows/Controls.

Da wird auch je nach Selektion ein anderes Panel aktiviert.

Verfasst: Donnerstag 18. Mai 2006, 15:00
von george
Hey Francesco,

habe mich für ein MultiSplitterWindow entschieden. Dort kann man über AppendWindow, InsertWindow, DetachWindow,... die Panels prima einfügen und wieder lösen.
Ich danke für deine Lösungshilfe.

thanks and greets
george

Verfasst: Donnerstag 18. Mai 2006, 15:04
von Francesco
george hat geschrieben:Hey Francesco,

habe mich für ein MultiSplitterWindow entschieden. Dort kann man über AppendWindow, InsertWindow, DetachWindow,... die Panels prima einfügen und wieder lösen.
Ich danke für deine Lösungshilfe.

thanks and greets
george
Bitte.

Ja, ist auch eine gute Idee.