![]() |
Teile vom Programm ausblenden
Mein Programm sieht folgendermaßen aus: Es gibt drei Panels, die übereinander angeordnet sind, an den Seiten glcih lang.
In der Statusleiste gibt es in einem Untermenü drei Einträge zum anhaken. Nun möchte ich dem Benutzer gewährleisten, dass er über das an- und abhaken dieser Einträge die Panels ein- und ausblenden kann. Das schwierige dabei ist nur,das Fenster soll nur so groß sein, unbedingt nötig. Wenn also oben das erste Panel ausgeblendet wird, sollen die anderen beiden nachrutschen und das Fenster soll sich der neuen Größe anpassen. :?: Da ich erst seit kurzer Zeit arbeite, scheint mir das 'n bisschen zu groß, ich weiß garnicht erst, wo ich anfangen soll :shock: |
Re: Teile vom Programm ausblenden
Also...
die Form Height bestimmst du so:
Delphi-Quellcode:
die prozedur dann nur noch in die form-dekl. eintragen und dann in dem menü aufrufen.
procedure TForm1.anpassen;
var p1,p2,p3,I: integer; platz: integer; // eventuell unten am form platzlassen begin p1 := 0; p2 := 0; p3 := 0; if Panel1.Visible then P1 := Panel1.Height; if Panel2.Visible then P2 := Panel2.Height; if Panel3.Visible then P3 := Panel3.Height; i := p1 + p2 + p3; platz := 32; Form.ClientHeight := i + platz; Panel1.Top := 8; Panel2.Top := p1 + 8 + 8; Panel3.Top := p1 + p2 + 24; end; mfG mirage228 p.s.: der code ist jetzt ausm gedächtnis, ich weiss nich obber funkt. |
Re: Teile vom Programm ausblenden
Ich weiß ja nicht wie lange du schon mit Delphi arbeitest, also komm dir bitte nicht verscheißert vor.
Im object-Inspektor hast du doch die ganzen Eigenschaften der Objekte und eben auch des Forms. Auf diese Eigenschaften kannst du auch dynamisch zugreifen wie oben dargestellt. Objektname.eigenschaft:=Wert ciao, Czapie. |
Re: Teile vom Programm ausblenden
hallo,
du kannst die Align-Eigenschaft der Panele z.B. auf alTop setzen. Blendest du jetzt das oberste aus, schieben sich die anderen nach oben. zumindest bei meinem kleinen Test funktioniert es ganz gut. grüße, daniel |
Re: Teile vom Programm ausblenden
Zitat:
Aber jetzt hab' ich noch ein Problem, ich habe die Menüitems mit Autocheck=True bestückt. Wie kann ich jetzt klar machen, dass wenn der Haken davor ist, soll das Panel sichtbar sein, und anders halt dann unsichtbar? Mein alter Quelltext lautet:
Delphi-Quellcode:
Unsichtbar wird das Panel, alledings wird es beim anhaken nicht wieder sichtbar.
if menuitem1.Checked = True then Panel1.Visible := True;
if menuitem1.Checked = False then Panel1.Visible := False; Was soll ich da jetzt machen? |
Re: Teile vom Programm ausblenden
Damit habe ich jetzt keine Probleme mehr.
:dancer: Danke an alle!!!!!!!!!!!!!!!!!!!!! :dancer2: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz