Delphi-PRAXiS
Seite 2 von 3     12 3      

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 Wie kann man die Farbe einer Checkbox ändern? (https://www.delphipraxis.net/55095-wie-kann-man-die-farbe-einer-checkbox-aendern.html)

emsländer 17. Okt 2005 09:51

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Zitat:

Zitat von Union
Damit das Ganze sauber läuft, wirst Du wohl eine eigene Komponente dafür erstellen müssen, denn die Standard-Checkbox liefert auch keinerlei Events, um in den Paint Process eingreifen zu können. Ein schönes Beispiel mit Sourcecode findest Du hier Torry Xp Controls



Moin,

auch das Teil ist leider nicht das Genaue. Denn die Farbänderung betriff den Hintergund der Schrift incl. der Box.. grummel
Aber vielleicht ist hier einer der Hardcore-Coder in der Lage das Teil dahingehend abzuändern? :gruebel:

Gruss

EL

marabu 17. Okt 2005 11:29

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Habe noch ein wenig im WIN32 SDK geschmökert:

Zitat:

The WM_CTLCOLORBTN message is sent to the parent window of a button when the button is about to be drawn. By responding to this message, the parent window can set a button's text and background colors.
...
REMARKS
The text color of a check box or radio button applies to the box or button, its check mark, and the text. ...
Sieht so aus, als müsste man eine CheckBox von Grund auf nachbauen, wenn man die Farbe der check mark box aus einer Anwendung heraus individuell kontrollieren will.

marabu

wfoertsch 17. Okt 2005 12:17

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Liste der Anhänge anzeigen (Anzahl: 1)
hi,
leg doch einfach nen shape hinter ...
dann musst du zwar ein anderes label für die caption nehmen aber so war es am schnellsten gemacht ...



gruss wolle

emsländer 17. Okt 2005 12:18

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Zitat:

Zitat von wfoertsch
hi,
leg doch einfach nen shape hinter ...
dann musst du zwar ein anderes label für die caption nehmen aber so war es am schnellsten gemacht ...



gruss wolle

Es geht nicht um das Drumherum. Die Farbe IN der Box soll geändert werden können.

Gruss

EL

Kroko1999 17. Okt 2005 12:21

Re: Wie kann man die Farbe einer Checkbox ändern?
 
so etwas habe ich vorlanger Zeit auch mal versucht, ich glaube Du musst es selbst schreiben, denn die Checkboxes liegen als Bitmap in Windows (IMHO)!

emsländer 17. Okt 2005 12:22

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Zitat:

Zitat von Kroko1999
so etwas habe ich vorlanger Zeit auch mal versucht, ich glaube Du musst es selbst schreiben, denn die Checkboxes liegen als Bitmap in Windows (IMHO)!

Grummel .... wundert mich nur, das bisher noch niemand so ein rudimentäres Teil geändert oder geschrieben hat :gruebel:


Gruss

EL

Nils_13 17. Okt 2005 12:23

Re: Wie kann man die Farbe einer Checkbox ändern?
 
setz die checkbox in einen Panel, der die Farbe hat, die du haben willst.

Kroko1999 17. Okt 2005 12:27

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von Nils_13
setz die checkbox in einen Panel, der die Farbe hat, die du haben willst.

dann ist der Haken immer noch schwarz :!:
//EDIT: Bild
//Edit2: und das Innere immer noch weiß

emsländer 17. Okt 2005 12:34

Re: Wie kann man die Farbe einer Checkbox ändern?
 
Zitat:

Zitat von Kroko1999
Zitat:

Zitat von Nils_13
setz die checkbox in einen Panel, der die Farbe hat, die du haben willst.

dann ist der Haken immer noch schwarz :!:
//EDIT: Bild

Und ausserdem geht es nicht um den Haken. Es geht um die innere Farbe der Box :?


Gruss

EL

hanselmansel 17. Okt 2005 12:48

Re: Wie kann man die Farbe einer Checkbox ändern?
 
HiHo,

mit ein bisschen Bastelei kannst du die Checkbox auch selbst zeichnen. Du könntest deine Komponente von irgendeinem Control ableiten, das dir schon die Methoden des Canvas mitbringt. Der 3D-Effekt wird (unter Win9x) durch einen hellen Winkel rechts unten und einen schwarzen Winkel links oben dardestellt. Da müsstest du nur mit LineTo rumspielen, bis es richtig gut aussieht. Dann kanst du im Zentrum ein Rectangle beliebiger Farbe zeichnen. (Als Default liefert Delphi AFAIK sogar clWindow) Das Häckchen sollte auch keine größere, künstlerische Leisung darstellen. Dann musst du nur noch die restliche Funktionalität einer Checkbox implementieren, und wuppdi, alle sind glücklich.

MfG,

hanselmansel


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

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