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 Farbe eines TabSheets mit aktivem XP-Theme? (https://www.delphipraxis.net/15461-farbe-eines-tabsheets-mit-aktivem-xp-theme.html)

Benedikt 29. Jan 2004 09:44


Farbe eines TabSheets mit aktivem XP-Theme?
 
Hi,

wenn XP-Themes aktiviert sind, sind die einzelnen Seiten eines PageControls, die TabSheets, ja in anderen Farben, z.B. unter dem sibernen Theme sind sie komplett weiß.
Nun brauche ich genau diese Farbe, vordefiniert ist sie ja nicht.
Deshalb hab ich folgenden Code genommen, allerdings liefert der mit viel zu dunkle oder gar keine Farben, weil wahrscheinlich auch zwei Angaben falsch sind.

Delphi-Quellcode:
...
Details:=ThemeServices.GetElementDetails(t***) //Stelle 1
GetThemeColor(
   ThemeServices.Theme[Details.Element],
   Details.Part,
   Details.State,
   TMT_***  //Stelle 2
   Color);
...
An den beiden markierten Stellen habe ich wahrscheinlich falsche Sachen eingesetzt, nur weiß ich halt nicht, welche ich brauche um die Farbe der Tabsheets rauszukriegen.
Vielleicht hat ja jemand Erfahrung damit oder hatte das gleiche Problem schon mal?!?

Danke schonmal...

mirage228 18. Feb 2004 19:30

Re: Farbe eines TabSheets mit aktivem XP-Theme?
 
Hi Benedikt,

ich stehe zur Zeit vor dem selben Problem.

Ich hab bisher so versucht.

Delphi-Quellcode:
var
  Details: TThemedElementDetails;
  C: COLORREF;
begin
  Details:= Themes.ThemeServices.GetElementDetails(Themes.ttBody);
  C := Themes.ThemeServices.ColorToRGB(PageControl1.Pages[0].Brush.Color, @Details);
  Panel1.Color := RGB(GetRValue(C), GetGValue(C), GetBValue(C));
end;
Aber die Farbe des Panels ist immer son komisches Braun...

mfG
mirage228

Benedikt 19. Feb 2004 14:11

Re: Farbe eines TabSheets mit aktivem XP-Theme?
 
Naja, mittlerweile bin ich das Problem umgangen so dass ich die Lösung nicht mehr brauche, interessieren würde sie mich aber trotzdem.

Keks 3. Feb 2015 15:23

AW: Farbe eines TabSheets mit aktivem XP-Theme?
 
Sorry, dass ich das hier nach über 10 Jahren ausgrabe :shock:, aber ich habe exakt das gleiche Problem und finde leider keine Lösung. Zumindest nicht für Delphi XE. Bei neueren Versionen scheint es per Vcl.Themes.StyleServices möglich zu sein.

Wie lässt sich denn die Hintergrundfarbe eines TTabSheet-Panes mit Themes bestimmen? Standarmäßig ist es (wie oben schon erwähnt) weiß, aber das das muss ja nicht so sein.


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