PDA

Ver la Versión Completa : Como convertir un valor TColor en string para guardarlo en BD


darkamerico
09-04-2016, 19:38:52
Saludos amigos, estoy tomando un color desde un componente TcxColor que tiene elementos del tipo TColor: clYellow, clRed, etc...
deseo almacenar el color elegido en un campo string para luego reproducirlo. Ya que no existe la funcion ColorToStr() ni StrToColor().

Atte

Americo

darkamerico
09-04-2016, 20:10:17
La solucion era la siguiente:

function String2Color(s: string): TColor;
begin
s := 'cl' + s;
Result := StringToColor(s);
end;

function Color2String(Color: TColor): string;
begin
Result := LowerCase(ColorToString(Color));
if Copy(Result, 1, 2) = 'cl' then
Delete(Result, 1, 2);
end;

Espero que sea de utilidad.

Fuente: http://www.everyething.com/Different-String-Conversion-function-in-Delphi

Casimiro Notevi
09-04-2016, 23:24:03
Color es un valor entero normal y corriente, puedes almacenarlo tal cual.
También puedes usar la función colortostring

delphi.com.ar
11-04-2016, 00:37:03
Sin dudas lo guardaría como un entero como dice Casimiro.


Enviado desde mi StarTAC 1300

Casimiro Notevi
11-04-2016, 09:30:31
||-|| Tanto tiempo :)
Sin dudas lo guardaría como un entero como dice Casimiro.
Enviado desde mi StarTAC 1300

ecfisa
11-04-2016, 17:59:17
Hola darkamerico.

...
Ya que no existe la funcion ColorToStr() ni StrToColor().
...

Solo para aclarar que, si bién no se llaman de ese modo, las funciones si existen:

ColorToString (http://docwiki.embarcadero.com/Libraries/XE3/en/Vcl.Graphics.ColorToString)
StringToColor (http://docwiki.embarcadero.com/Libraries/XE3/en/Vcl.Graphics.StringToColor)

Saludos :)