Delphi-PRAXiS

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 Panels RECHTS beginnen (https://www.delphipraxis.net/12648-statusbar-panels-rechts-beginnen.html)

HomerGER2 1. Dez 2003 19:37


StatusBar Panels RECHTS beginnen
 
Hallo liebe Wissenden

Ich hab die statusbar von tmax (alles da , zeit, datum uvm)
wie bekomme ich aber das die panel von rechts beginnen und nicht von links

mit DiBiMode geht es nicht, auch bei der Standard StatusBar nicht


einschonvorweihnachtenumgeschenkebittender

Homer

WtF 2. Dez 2003 07:33

Re: StatusBar Panels RECHTS beginnen
 
Erstmal herzlich Willkommen bei Delphi Praxis,
also was genau hast du denn vor? Würde es nicht auch gehen wenn du Anfangs die ProgressBar auf 100% hast und dann halt abziehst, anstatt zu addieren? Die Farbe nimmt er aus den Systemeinstellungen, falls du sie umstellen möchtest.
Mfg

Sorry - war müde habs verpeilt :mrgreen:

darkstone 2. Dez 2003 07:45

Re: StatusBar Panels RECHTS beginnen
 
Ich denk mal, du willst die Panels in einer StatusBar rechtsbündig anordnen - das geht glaub ich nur "manuell" - in dem ein zusätzliches Panel an die erste Stelle eingefügt wird, dessen Breite "variabel" ist - beim OnResize-Event des Formulars kann dann diese Breite geändert werden. Damit sollte das aussehen, als wären die Panels rechtsbündig.

himitsu 2. Dez 2003 07:58

Re: StatusBar Panels RECHTS beginnen
 
Ein Hallöle von http://www.FrankNStein.de/Smiley-Wolke.gif und herzlich willkommen in der DP-Gemeinde :hi:.

Wenn sich die Fenstergrösse nicht änderst, kannst du ja alles manuel über die Eigenschaft Width des StatusBar-Panels andern.
Ansonsten lässt du es einfach im OnResize-Ereignis deines Formulars jedesmal neu berechnen:
Delphi-Quellcode:
Uses Math;

Procedure TForm1.FormResize(Sender: TObject);
  Begin
    StatusBar1.Panels.Items[0].Width := Max(ClientWidth -
      StatusBar1.Panels.Items[1].Width -
      StatusBar1.Panels.Items[2].Width -
      ...
      StatusBar1.Panels.Items[n].Width, 0);
  End;

oder

Procedure TForm1.FormResize(Sender: TObject);
  Begin
    StatusBar1.Panels.Items[0].Width := Max(ClientWidth - 100{B}, 0);
  End;

{ B = Gesamtbreite der Panels ab dem 2.Panel (ab [1]) }
Die Schrift lässt sich dann auch noch mit der Eigenschaft Alignment des Panels ändern (siehe OH).

http://www.delphipraxis.net/images/common/divider.jpg
http://www.FrankNStein.de/Smiley-Kuss.gif * * http://www.FrankNStein.de/Smiley-Spinne.gif * * * http://www.FrankNStein.de/Smiley-Winken.gif

HomerGER2 2. Dez 2003 15:22

Re: StatusBar Panels RECHTS beginnen
 
hallo
das ist es eben, die fensterbreit ändert sich und auch die auflösung
ich dachte es ging über eine einstellungen ,(siehe Align) bei einigen StatusBar Komp's geht es ja
ich wollte keine kaufen


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:14 Uhr.

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