![]() |
RGB-Farbwert in TColor konvertieren
Moin, Moin.
Die API erwartet (z.B. um in einem RichEdit die Hintergrundfarbe zu setzen) bei Farbangaben einen RGB-Wert, diesen kann ich mittels ColorToRGB von TColor in den API-konformen RGB Wert wandeln und übergeben. Wie bekomme ich aber den TColor-Wert, wenn ich mittels API-Funktion z.B. die Hintergrundfarbe eines RichEdits gelesen habe und dann mit einem TColor-Wert weiterarbeiten möchte??? Gruß Ralph |
Re: RGB-Farbwert in TColor konvertieren
soweit ich weiß mit der Funktion
Delphi-Quellcode:
Liefert einen TColor-Wert zurück ;-)
RGB(r,g,b);
P@Tti PS: Mein 100. Beitrag :party: |
Re: RGB-Farbwert in TColor konvertieren
Joo, Danke, dann muss ich aber den von der API zurückgelieferten Wert erst einmal in die 3 Farbwerte zerlegen. Wie mache ich das?
Gruß Ralph |
Re: RGB-Farbwert in TColor konvertieren
|
Re: RGB-Farbwert in TColor konvertieren
|
Re: RGB-Farbwert in TColor konvertieren
Prima! Ich danke allen!!
Übrigens, habe die Suche bemüht, aber wohl mit dem falschen Stichwort :spin2: Gruß Ralph |
Re: RGB-Farbwert in TColor konvertieren
Ahh, zu früh gefreut...
Auf die Gefahr hin, dass ich jetzt Prügel bekomme (ich denke heute sollte ich lieber den PC ausschalten): API von RichEdit liefert den Farbwert als COLORREF vom Typ DWORD zurück; im DWord ist die Farbe in folgender Form enthalten 0x00BBGGRR. Wie bekomme ich nun das DWord in untenstehende Funktion????????
Delphi-Quellcode:
Sorry, ist heute nicht mein Tag!
function RGB2TColor(R,G,B:Byte):Integer;
begin Result := R or (G shl 8) or (B shl 16); end; Gruß Ralph |
Re: RGB-Farbwert in TColor konvertieren
*Grins* Die Funktion liefert dir deinen DWord (ob mit oder ohne Vorzeichen ist auf Bitebene egal) aus den Einzelwerten zurück. Du brauchst diese Funktion also gar nicht.
|
Re: RGB-Farbwert in TColor konvertieren
Das Ergebnis ist imho schon ein TColor
|
Re: RGB-Farbwert in TColor konvertieren
Ahhhhhhhhhhh, sch... Tag heute!
Aber letzte Frage dann: Warum muss ich vor dem Setzen der Farbe mit SetCharFormat() den TColor-Wert mit ColorToRGB umwandeln??? Dann könnte ich doch gleich den TColor-Wert an SetCharFormat übergeben? dasverstehe ich nun wirklich nicht :wall: Gruß Ralph /edit: hmm, die Funktion ColoToRGB ist ja in Graphics enthalten: wenn der TColor Wert negativ ist, dann wird "was gemacht", postive Werte werden einfach "weitergereicht" (mkinzler hat dann Recht)- wann ist TColor denn negativ? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:00 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 by Thomas Breitkreuz