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 CheckBox/RadioButton und manifest (https://www.delphipraxis.net/113022-checkbox-radiobutton-und-manifest.html)

Andreas L. 1. Mai 2008 13:14


CheckBox/RadioButton und manifest
 
Hallo,
wenn ich die Schriftfarbe von einem RadioButton oder einer Checkbox ändere und ein Manifest im Programm einbinde (TXpManifest von Win32) wird die Schrift trotzdem schwarz angezeigt. Jedes dieser Objekte selber aus einem Label zusammen basteln ist keine Lösung! Die JvCheckBox bzw. JvRadioButton haben das selbe Problem. Was kann ich dagegen tun?

himitsu 1. Mai 2008 13:27

Re: CheckBox/RadioButton und manifest
 
Bei Verwendung des Manifests wird natürlich die Farben des XP-Styles verwendet :stupid:

Aber hier im Forum gibt es irgendwo Beispiele, wie man den Style für einzelne Komponenten deaktivieren kann.

Andreas L. 1. Mai 2008 14:08

Re: CheckBox/RadioButton und manifest
 
Zitat:

Zitat von himitsu
Bei Verwendung des Manifests wird natürlich die Farben des XP-Styles verwendet :stupid:

Aber hier im Forum gibt es irgendwo Beispiele, wie man den Style für einzelne Komponenten deaktivieren kann.

Durch SetWindowTheme(xxx.Handle, '', ''); sieht das ganze Objekt klassisch aus. Ich will doch nur die Farbe ändern...

Bernhard Geyer 1. Mai 2008 15:29

Re: CheckBox/RadioButton und manifest
 
Zitat:

Zitat von Andreas L.
Durch SetWindowTheme(xxx.Handle, '', ''); sieht das ganze Objekt klassisch aus. Ich will doch nur die Farbe ändern...

Entweder Theming oder nicht. Mischmasch verursacht nur Problem. Stell dir vor jemand hat jetzt ein Theme gewählt wo der Panel/Formular/Window-Hintergrund genauso ist wie deine fest gewählte Farbe? Z.B. Rot auf Rot - Nicht wirklich ergonomisch :-)

Andreas L. 1. Mai 2008 15:57

Re: CheckBox/RadioButton und manifest
 
Wenn die Hintergrundfarbe immer clBlue ist, sollten da die Theme Farben nix ändern. Bei einem Label kann ich doch auch die Schriftfarbe ändern und die CheckBox hat ja so eine Eigenschaft, die ohne Manifest auch funktioniert. Frag mich wo da das Problem liegt?

Bernhard Geyer 1. Mai 2008 16:09

Re: CheckBox/RadioButton und manifest
 
Zitat:

Zitat von Andreas L.
Wenn die Hintergrundfarbe immer clBlue ist, ...

Hast du wohl auch ein Hintergrundfarbe unabhängig vom Theming definiert? Ob das immer passt

Zitat:

Zitat von Andreas L.
Bei einem Label kann ich doch auch die Schriftfarbe ändern und die CheckBox hat ja so eine Eigenschaft, die ohne Manifest auch funktioniert. Frag mich wo da das Problem liegt?

Das Problem ist das es "As Designed" ist da einige Properties bei aktiven Theming deaktiviert sind. Du könntest die entweder

1, Eigene Ableitung machen und dann selbst zeichnen
2, Skinning-Komponenten (VCLSkin etc.) verwenden um darüber dein gewünschtes verhalten zu haben
3, Theming-Komponenten verwenden (ElPack) die über MS-Styles-Dateien für die eigene Anwendung ein eigenes Theming verwenden.

himitsu 1. Mai 2008 17:21

Re: CheckBox/RadioButton und manifest
 
Un TLabel sid soein Sonderfall, denn dieses baut nicht auf dem Windowsequivalent "Static" auf, sondern wird Delphiintern selbst gezeichnet ... drum verhält es sich nicht so wie andere Komponenten z.B. ala CheckBox und RadioButton, denn diese werden von Windows gezeichnet.


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