vb Application mit mehreren Panels

ratze79

Mitglied
Hallo zusammen,

ich möchte eine Anwendung schreiben die eine Menüstruktur beinhaltet und je nach selektiertem Eintrag eine Anzeige sichbar werden soll.
Zum Beispiel wie bei iTunes. Auf der linken Seite stehen die Menüeinträge und auf der Rechten erfolgt die Ausgabe. Ich habe jetzt damit angefangen für jeden Menüeintrag ein Panel zu erstellen und setzte diese auf visible true/false. Das wird aber mit zunehmender Anzahl von Menüpunkten ziemlich unübersichtlich und mir gehen die Bezeichnungen für Labels und Textboxen aus :p

Habt ihr eine Lösung oder einen Vorschlag wie man das besser machen kann?

Vielen Dank schon mal im Voraus.

Gruß
ratze79
 
Hey,


Du hast ja bei den Panel's eine BackColor-Eigenschaft... setzte eine Farbe...(also alles ausser Transparent oder inherited)... dann schmeiss den ganzen visible true/false code raus und schreib stattdessen folgendes...

Code:
myPanel.BringToFront();


Dies setzt das entsprechende Panel in den Vordergrund (der Z-Reihenfolge) und damit alle Anderen dahinter, somit muss man sich nicht um die Sichtbarkeit aller Panel's kümmern.


o/
 
Zuletzt bearbeitet von einem Moderator:
Hallo,

danke für deine Antwort. So habe ich es auch gemacht. Habe die Panels alle klein und nebeneinander angeordnet und ändere dann beim Aufruf die Position und Size. Damit bleibt es übersichtlich.

Demnach gehe ich davon aus das das die einzige bzw. richtige Lösung ist?!

Gruß
ratze
 
Hey,

naja, letztens hab ich ein TabPanel benutzt, das war aber für ein kleines Menü...

Die Panels, mit 'ner Liste daneben als Menü, sind ganz gut, würde ich auch benutzen, weil ich aber die ITunes-Software nicht kenne, kann ich in diesem Fall nur auf den VLC-Media-Player verweisen, "Estras->Einstellungen", links unten "Alle Einstellungen zeigen", dürfte etwa dem Menü entsprechen.

MfG
 
Ich hab für ein Projekt in so einem Fall das TabControl verwendet, wenn du die Appearance auf FlatButtons stellst und die Buttons klein machst (bzw. hinter einem anderen Control versteckst) hast du eine Serie leicht anzusprechender Panels.


Der Doc!
 
@DrSoong:
Ich habe das wie folgt gelöst: im Form_Load bzw Im Formkontruktor (nach InitializeComponent() ) das hier notieren:
Code:
				tabControl1.Appearance = TabAppearance.Buttons;
				tabControl1.SizeMode = TabSizeMode.Fixed;
				tabControl1.ItemSize = new Size ( 0,1 );
Somit werden die Tabreiter sogut wie unsichtbar und das Tabcontrol muss nicht hinter einem anderen Control versteckt werden. Leider hat M$ die Eigenschaft TabsVisible[true|false] NICHT implementiert - aus welchen Gründen auch immer :(

Axo: o.a. Codeschnippsel ist mit c#, dürfte aber in VB genauso möglich sein!?

Gruß, Rainer
 
Im allgemeinen ist es ja so, dass du die einzelnen Tabs mit .SelectTab(Tab) auswählst, da ist nichts mit Visible oder ähnlichen. Wenn du einen Tab wählst sind die anderen Tabs ja sowieso nicht sichtbar.

Oder hab ich jetzt deine Frage nicht richtig verstanden?


Der Doc!
 
Genau: Frage nicht richtig verstanden.
Mit Tabs meine ich die (anklickbaren) Kartenreiter (kannst auch 'Lasche' zu sagen ;) ), und genau diese können leider nicht ohne etwas tricksern unsichtbar gemacht werden.

Was du meinst, sind die sog. TabPages, die alle im Hintergrund(=unsichtbar) sind - bis auf diejenige, die mittels Klick *) auf den entsprechenden Tab(Kartenreiter, Lasche) in den Vordergrund(=sichtbar) geholt wird.

*) oder programmtechnisch
 

Neue Beiträge

Zurück