Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Statusbar bleibt nicht alBottom (https://www.delphipraxis.net/125821-statusbar-bleibt-nicht-albottom.html)

messie 12. Dez 2008 14:55


Statusbar bleibt nicht alBottom
 
Moin,

ich habe ein Fenster, in dem verschiedene Panels und ein Statusbar angeordnet sind. Das Panel über dem Statusbar ist auch alBottom, weil es beim Resize dieselbe Höhe behalten soll.
Der Statusbar wird gelegentlich über dem Panel gezeichnet. Das hängt von der Auflösung und dem Format des Bildschirms und anderen unbekannten Parametern ab (Mondphasen? Rohölpreise?) ab.
Ich habe bisher noch keine andere Lösung gefunden, das benachbarte Panel anders zu platzieren.

Hat jemand ein wenig Klebstoff für meinen Statusbar?

Danke, Messie

Super_Chemiker 12. Dez 2008 15:14

Re: Statusbar bleibt nicht alBottom
 
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  statusbar1.Align := albottom;
  panel1.Align := albottom;
  panel1.Align := alnone;
end;
sollte gehen

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  statusbar1.Align := albottom;
  panel1.width := clientwidth;
  panel1.Height := wasauchimmergewünschtist;
  panel1.Top := clientheight - panel1.Height - statusbar1.Height;
end;
sollte auch gehen, vorrausgesetzt ich hab die frage verstanden! :-D

khh 12. Dez 2008 15:16

Re: Statusbar bleibt nicht alBottom
 
Zitat:

Zitat von Super_Chemiker
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  statusbar1.Align := albottom;
  panel1.Align := albottom;
  panel1.Align := alnone;
end;

kannst mir erkären weshalb du panel1.align 2mal setzt ?

Super_Chemiker 12. Dez 2008 15:24

Re: Statusbar bleibt nicht alBottom
 
@ khh
damit wird erst das panel nach unten geschoben und dann wird es wieder losgelassen, damit die Statusbar nach unten darf!
ob es ohne alnone setzen geht weiß ich nicht!:pale:

khh 12. Dez 2008 15:27

Re: Statusbar bleibt nicht alBottom
 
Zitat:

Zitat von Super_Chemiker
@ khh
damit wird erst das panel nach unten geschoben und dann wird es wieder losgelassen, damit die Statusbar nach unten darf!
ob es ohne alnone setzen geht weiß ich nicht!:pale:

das kommt mir aber spanisch vor ;-)

mkinzler 12. Dez 2008 15:30

Re: Statusbar bleibt nicht alBottom
 
Wenn du es auf alNone setzt, ist es wohl klar das es nicht mehr alBottom ist :zwinker:

khh 12. Dez 2008 15:35

Re: Statusbar bleibt nicht alBottom
 
Zitat:

Zitat von mkinzler
Wenn du es auf alNone setzt, ist es wohl klar das es nicht mehr alBottom ist :zwinker:

deshalb denke ich, dass die erste ausrichtung überflüssig ist, oder irre ich da?

mkinzler 12. Dez 2008 15:38

Re: Statusbar bleibt nicht alBottom
 
Er möchte ja eine Anordnung am unteren Rand. Vielleicht umgekehrt

khh 12. Dez 2008 15:41

Re: Statusbar bleibt nicht alBottom
 
Zitat:

Zitat von mkinzler
Er möchte ja eine Anordnung am unteren Rand. Vielleicht umgekehrt


mh, ich bin immer davon ausgegangen, dass diese Zuweisungen zur Laufzeit den Wert der variablen "einstellen".
Wenn ich das recht verstehe, meint er aber mit zwei Zuweisungen werden beim create beide ausgeführt!.

also erst alBottom und dann alNone

das kommt mir spanisch vor.

messie 12. Dez 2008 15:55

Re: Statusbar bleibt nicht alBottom
 
Zitat:

Zitat von Super_Chemiker
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  statusbar1.Align := albottom;
  panel1.Align := albottom;
  panel1.Align := alnone;
end;

Mit dieser Variante wird panel1 vom darüberliegenden Panel überschrieben(ist also weg, weil das alclient ist)
Zitat:

Zitat von Super_Chemiker
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  statusbar1.Align := albottom;
  panel1.width := clientwidth;
  panel1.Height := wasauchimmergewünschtist;
  panel1.Top := clientheight - panel1.Height - statusbar1.Height;
end;

geht auch nich'. Ich hab' da auch schon eine Menge probiert...selbst die Reihenfolge in der dfm-Datei habe ich vertauscht, auch das geht nicht. Wie gesagt, es ist nicht immer so. Da muss es noch einen anderen Einfluss geben.

Grüße, Messie


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:01 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz