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/)
-   -   Firemonkey OSX Titelzeile ausblenden (https://www.delphipraxis.net/186431-firemonkey-osx-titelzeile-ausblenden.html)

Peter666 2. Sep 2015 12:54

Firemonkey OSX Titelzeile ausblenden
 
Gibt es eine Möglichkeit in OSX die Titelleiste auszublenden. Ich wollte ähnlich wie in iTunes eine eigene Titelleiste mit mehreren Knöpfen platzieren. Die Idee war die komplette Zeile als Bild zu zeichnen - jeweils fokussiert und nicht fokussiert.

WindowHandleToPlatform(Handle).Wnd.setStyleMask(NS BorderlessWindowMask);

mache ich jetzt, aber das schaut dann aus wie ein Fenster mit sauber abgetrennter Titelleiste, da fehlt der Schatten und man kann das Fenster nicht mehr von Position 0,0 bewegen.

Harry Stahl 2. Sep 2015 22:03

AW: Firemonkey OSX Titelzeile ausblenden
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier reicht es schon, dass Du Borderstyle der Form auf None setzt.

Die Anfangsposition für Left und top kannst Du ja z.B. auf 100,100 setzen (oder Formposition auf Screencenter).

Oben in der Form legst Du halt ein TPanel hin, beim MouseDown-Event verwendest Du folgendes:

Delphi-Quellcode:
procedure TForm28.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Single);
begin
  Self.StartWindowDrag;
end;
Damit kannst Du dann die Form wie sonst auch verschieben. Das funktioniert auf beiden Plattformen (Windows und MAC OS X).

Den fehlenden Schatten der Form kannst Du (so ungefähr) nachahmen, indem Du ein Panel (Align=Client) in Deine Form legst, da ein Shadoweffekt verwendest und für das Panel die Margins auf ca. 15 Pixel setzt. Du musst ein wenig mit den Einstellungswerten für den Shadoweffect spielen, um es passend zu bekommen (Beispiel siehe Screenshot).

CHackbart 11. Sep 2015 09:46

AW: Firemonkey OSX Titelzeile ausblenden
 
Liste der Anhänge anzeigen (Anzahl: 2)
Ich hab sowas auch vor geraumer Zeit gemacht für Justradio.
Das Firemonkey Formular kann ich gerne bereitstellen, wenn Du es brauchst. Im Prinzip ist das nur ein Rectangle mit einem Gradient:

Delphi-Quellcode:
 rectToolbar.Fill.Gradient.Color := $FFDCDDDE;
  rectToolbar.Fill.Gradient.Color := $FFEEEFF0;
und für den Text in der Mitte hab ich ebenfalls ein Rechteck genommen und die Knöpfe sind TPath's. Einzig für die Systembuttons musste ich eine eigene FMX Klasse erstellen die aus meiner PNG eine Buttonleiste erstellt.

Christian
PS: Kompliziert wird's nur, wenn du wirklich exakt die Anzeige von itunes kopieren willst. Da empfehle ich alles mit Bildern zu machen. Halbwegs ähnlich geht aber auch mit Bordmitteln.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:31 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