Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   ColorBox - Color zu Hexcolor machen (https://www.delphipraxis.net/25774-colorbox-color-zu-hexcolor-machen.html)

Master_BB 12. Jul 2004 11:40


ColorBox - Color zu Hexcolor machen
 
Heya,
ich wollte mal gerne wissen wie man eine in der ColorBox ausgewählte Frabe
zu deren Hexwert umrechnet bzw umformt.

Greetz
Master_BB

Stevie 12. Jul 2004 11:48

Re: ColorBox - Color zu Hexcolor machen
 
Delphi-Quellcode:
IntToHex(ColorBox1.Selected, 8);

Master_BB 12. Jul 2004 12:30

Re: ColorBox - Color zu Hexcolor machen
 
ah ja thx funktioniert,
jedoch hab ich das problem das manche farben falsch sind.

ich habe die digits auf 6 runter gestellt

Delphi-Quellcode:
IntToHex(ColorBar1.Selected,6);
weil im HTML Code die Farben nur 6 Stellen hatten.
und bei manchen Farben ist auf der HTML Seite die Farbe anders als die in der ColorBar ausgewählte.
Wie kommt das?

Sharky 12. Jul 2004 12:32

Re: ColorBox - Color zu Hexcolor machen
 
Hai Master_BB,

wird bei HTML nicht eine andere Reihenfolge verwendet? BTW: Schaue Dir auch einmal ColorToRGB an.

alcaeus 12. Jul 2004 12:44

Re: ColorBox - Color zu Hexcolor machen
 
Sharky hat Recht. TColor speichert Daten nicht im RGB-Format, sondern komplett anders. Du musst wie folgt vorgehen:
Delphi-Quellcode:
var
  r, g, b: Byte;
  aColor: TColor;
  RGB: String[6];
begin
  ColorToRGB(aColor, r, g, b);
  RGB := IntToHex(r, 2)+IntToHex(g, 2)+IntToHex(b, 2);
end;
Greetz
alcaeus

scp 12. Jul 2004 12:48

Re: ColorBox - Color zu Hexcolor machen
 
Zitat:

Zitat von alcaeus
Sharky hat Recht. TColor speichert Daten nicht im RGB-Format, sondern komplett anders.

"Komplett anders" würde ich nicht sagen, einfach nur verkehrt herum: BGR statt RGB.

Stevie 12. Jul 2004 12:58

Re: ColorBox - Color zu Hexcolor machen
 
Zitat:

Zitat von alcaeus
Sharky hat Recht. TColor speichert Daten nicht im RGB-Format, sondern komplett anders. Du musst wie folgt vorgehen:
Delphi-Quellcode:
var
  r, g, b: Byte;
  aColor: TColor;
  RGB: String[6];
begin
  ColorToRGB(aColor, r, g, b);
  RGB := IntToHex(r, 2)+IntToHex(g, 2)+IntToHex(b, 2);
end;
Greetz
alcaeus

:gruebel: Klappt das nicht gleich so?
Delphi-Quellcode:
IntToHex(ColorToRGB(ColorBox1.Selected), 6));

alcaeus 12. Jul 2004 13:03

Re: ColorBox - Color zu Hexcolor machen
 
:oops: :wall: :oops:

Ich muss eine falsche Deklaration im Kopf gehabt haben.
Der Weg von Stevie ist natürlich der richtige. Sorry...

Greetz
alcaeus

Sharky 12. Jul 2004 13:12

Re: ColorBox - Color zu Hexcolor machen
 
Zitat:

Zitat von Stevie
...:gruebel: Klappt das nicht gleich so?
Delphi-Quellcode:
IntToHex(ColorToRGB(ColorBox1.Selected), 6));

Dürfte eigentlich nicht gehen.
Zitat:

Zitat von Die F1-Taste
Mit ColorToRGB können Sie den für Windows-API-Aufrufe benötigten RGB-Wert einer Farbe ermitteln. Die in den höchstwertigen Bits gespeicherte Information, welche Palette für nicht immer verfügbare Farben verwendet werden soll, wird von ColorToRGB entfernt.

Damit sind die Anteile noch immer im "BGR-Format"

scp 12. Jul 2004 13:24

Re: ColorBox - Color zu Hexcolor machen
 
Delphi-Quellcode:
var
  r, g, b: Byte;
  aColor: TColor;
  RGB: String[6];
begin
  R := GetRValue( AColor );
  G := GetGValue( AColor );
  B := GetBValue( AColor );
  RGB := IntToHex(r, 2)+IntToHex(g, 2)+IntToHex(b, 2);
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 Uhr.
Seite 1 von 2  1 2      

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