Delphi-PRAXiS
Seite 1 von 2  1 2      

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/)
-   -   Probleme mit TTitlebarPanel beim Maximieren eines Forms (https://www.delphipraxis.net/217695-probleme-mit-ttitlebarpanel-beim-maximieren-eines-forms.html)

Cypheros 22. Aug 2025 13:59

Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Liste der Anhänge anzeigen (Anzahl: 3)
Mir ist ein Schönheitsfehler bei der TTitlebarPanel-Komponente aufgefallen. Wenn man ein derart verschönertes Fenster maximiert, entsteht ein weißer Streifen obendrüber.

Das kann man mit der TitelbarPanelDemo bei den Delphi-Samples gut nachvollziehen. Einfach den Caption-Bereich einfärben und dann das Fenster maximieren.
Anhang 57728

Hat jemand eine Ahnung, wie man den Streifen weg bekommt?

Anhang 57729

Es sieht so aus, als ob noch etwas vom alten Caption-Area übrig ist.

Anhang 57730

DaCoda 22. Aug 2025 14:06

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
TTitlebarPanel hat viele Macken. Ich benutze das gar nicht mehr und baue mir das dann selber... :cry:

himitsu 22. Aug 2025 17:24

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Problem, normal haben die Fenster einen unsichtbaren Bereich drumrum, für den unsichtbaren Rahmen und den Schatten.
Damit das aber beim Maximieren nicht in benachbarte Monitore überhängt, gibt es diesen Überstand im maximierten Zustand nicht, aber dieses blöde Panel lässt trozdem diesen Abstand frei.

Es gab auch noch irgendwas Anderes, oder war's sogar dieses Mistding ... müsste mal schauen, ob ich den Bugreport finde.

Cypheros 22. Aug 2025 19:50

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Liste der Anhänge anzeigen (Anzahl: 2)
Naja, Delphi nutzt ja auch den Titelbereich, da gibt es das Problem nicht. Entweder haben die einen Workaround oder benutzen etwas eigenes.

Anhang 57731

Ich habe schon alles Mögliche probiert aber ich krieg diese 4 Zeilen nicht bemalt.
Wenn ich WM_NCPaint abfange und "Message.Result := 0;" zurückgebe, sind die 4 Zeilen transparent beim maximieren. Dafür sieht es dann aber im normalen Fenstermodus seltsam aus.

Anhang 57732

Uwe Raabe 23. Aug 2025 00:24

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Zitat:

Zitat von Cypheros (Beitrag 1551100)
Einfach den Caption-Bereich einfärben

Wie machst du das genau?

Cypheros 23. Aug 2025 09:40

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Einfach die TitlebarPanel Demo von den Delphi-Samples starten und das Häkchen setzen bei "Customize titlebar colors" und als Background eine andere Farbe als Weiß auswählen, so wie auf dem ersten Screenshot.

Uwe Raabe 23. Aug 2025 10:02

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Zitat:

Zitat von Cypheros (Beitrag 1551112)
Einfach die TitlebarPanel Demo von den Delphi-Samples starten und das Häkchen setzen bei "Customize titlebar colors" und als Background eine andere Farbe als Weiß auswählen, so wie auf dem ersten Screenshot.

Das kann ich mit Delphi 12.3 nicht reproduzieren. Allerdings wird die Farbe im Vollbild auch nicht verwendet.

jaenicke 23. Aug 2025 11:47

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1551113)
Das kann ich mit Delphi 12.3 nicht reproduzieren. Allerdings wird die Farbe im Vollbild auch nicht verwendet.

Mit Delphi 10.4 kann ich es auch nicht reproduzieren, aber die Farbe wird verwendet. Allerdings sind unter Windows 11 die Buttons oben rechts nicht in der Farbe eingefärbt. Daher vermute ich, dass das noch ein altes Windows 10 ist und es daran liegt.

Mit Delphi 12 kann ich es leider aktuell nicht testen, weil seit der Deinstallation der abgelaufenen Delphi 11 CE die Lizenz für Delphi 12 nicht mehr akzeptiert wird, egal was ich mache. :evil: Ich werde wohl erst ein Backup einspielen müssen... :roll:

Cypheros 23. Aug 2025 12:09

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Liste der Anhänge anzeigen (Anzahl: 1)
Bei mir ist es Delphi 11.1 unter Windows 11 24H2 (build 26100.4946).

Hab es mit 32bit und 64bit probiert, auch mit Windows 10, immer das gleiche Ergebnis.

Aber wenn ich das mit Delphi 10.4.2 mache, dann funktioniert es tadellos.
Anhang 57733

Cypheros 23. Aug 2025 12:49

AW: Probleme mit TTitlebarPanel beim Maximieren eines Forms
 
Ok, Lösung gefunden.

Wenn ich das TitleBarPanel zur Laufzeit erzeuge, ist alles in Butter und es gibt keinen unschönen Streifen.

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  TitleBarPanel1 := TTitleBarPanel.Create(self);
  TitleBarPanel1.Parent := self;
  CustomTitleBar.Control := TitleBarPanel1;
end;
Ich habe mal den Sourcecode beider Version der Vcl.TitleBarCtrls verglichen. Hauptsächlich ist bei der Version 11 von Delphi das Handling des Designmanagers hinzugekommen. Möglicherweise ist das der Grund für das unterschiedliche Verhalten.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:16 Uhr.
Seite 1 von 2  1 2      

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-2025 by Thomas Breitkreuz