![]() |
Farbwerte als String
Hi,
ich will folgendes: die Funktion colortoString liefert zwar auch den Hexwert, allerdings bei Werten, wie clNavy wird auch clNavy zurückgegeben. Wat kann man da machen? Chris |
:wiejetzt:
Was hat DatumsWert mit Farben zu tun? :shock: Wenns dir um Farben geht, könntest du es so machen:
Delphi-Quellcode:
Form1.Caption:= IntToHex(integer(clblue),6);
|
Das Integer kannste auch weglassen...
|
Ähem... Sorry, fehler. Werde das gleichmal editieren.
Ne... nicht ganz. Ich will aus einer Variable vom Typ TColor einen String des Farbwertes (nicht des -namens) dieser Variable bekommen. Ungefähr so:
Delphi-Quellcode:
Nur, dass wenn acolor den Wert clNavy hat (also den Wert von clNavy; da clNavy eine konstante ist), dann auch Result 'clNavy' ist...
Result := ColorToString( aColor );
Chris |
Äh, kuck mal in der Hilfe nach ColorToString, das mach doch genau das was du willst...
Oder versteh ich dich einfach falsch? |
Zitat:
Chris |
Delphi-Quellcode:
In edit1 steht dann '$ff3216' und in edit2 'clnavy', das ist doch das was du suchst...
edit1.Text:=colortostring($ff3216);
edit2.Text:=colortostring(clnavy); |
NEIN! Ich will ja eben, dass NICHT der cl...-Name zurückkommt, sondern NUR der $...-Wert!!!!!!!!!
Chris |
omg janjan,
tut mir leid, aber du scheinst etwas schwer von begriff zu sein :stupid: :) was chris will ist, dass STATT 'clnavy' der farbwert (rgb) ausgegeben wird. Also aus dem konstantennamen clnavy wird der rgb-farbwert. Wie das geht weiss ich allerdings auch nicht :mrgreen: Gruß Jan |
Hi,
habe gerade den eigentlich Grund für meine Frage klären können: ![]() Chris |
Delphi-Quellcode:
function ColToString(AColor : TColor):String;
begin AColor := ColorToRGB(AColor); Result := IntToHex(GetRValue(AColor),2)+ IntToHex(GetGValue(AColor),2)+ IntToHEx(GetBValue(AColor),2); end; |
Meine Verwirrung lag darin das Chakotay1308 meinen ersten Vorschlag nicht angenommen hat.
Delphi-Quellcode:
Das klappt soweit, das Problem ist nur, das das erste und letzte Zahlenpaar vertauscht sind. Leider hab ich das grade erst gemerkt und war bis eben der Überzeugung das dies die Lösung ist die Chakotey gesucht hat.
Form1.Caption:= IntToHex(integer(clblue),6);
Und diesen Satz hier trug auch nicht zur klärung bei, denn kann man auch ohne Probleme so verstehen wie ich ihn verstanden hab: Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:31 Uhr. |
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