Page 1 of 1

cambiar color en TextOut

Posted: Wed Apr 02, 2014 10:48 am
by pacoelche
Quisiera cambiar el color en un TextOut, pero utilizando una variable, no indicándo directamente el color.
Si pongo :TextOut(100,100,"Prueba",,CLR_RED) me imprime en rojo, pero si pongo:
nColor:="CLR_RED"
:TextOut(100,100,"Prueba,,nColor) me imprime en el color por omisión NEGRO.
¿Como puedo hacer, en este segundo caso, para que asuma el color de la variable nColor.
Mil gracias anticipadas
--

cambiar color en TextOut

Posted: Wed Apr 02, 2014 4:47 pm
by Claudio[1]
Hola Francisco
Cuando escribis CLR_RED estás indicando al compilador que utilice la
definicion del archivo Colors.ch que dice:
#define CLR_RED 0x000080
O sea, que en realidad lo que pasas a la TextOut es el número 0x000080,
que esta en hexadecimal y es el número 128 en decimal
En el formato RGB es el color Rojo.
Vos le estas pasando el string "CLR_RED"
Deberí­as pasarle el numero de color rgb que podés calcularlo con:
(( r + ( g * 256 ) + ( b * 256 * 256 ) ))
Saludos.
El 02/04/2014 05:48 a.m., Francisco Martí­nez Garcí­a escribió:
> Quisiera cambiar el color en un TextOut, pero utilizando una variable,
> no indicándo directamente el color.
> Si pongo :TextOut(100,100,"Prueba",,CLR_RED) me imprime en rojo, pero si
> pongo:
> nColor:="CLR_RED"
> :TextOut(100,100,"Prueba,,nColor)me imprime en el color por omisión NEGRO.
> ¿Como puedo hacer, en este segundo caso, para que asuma el color de la
> variable nColor.
> Mil gracias anticipadas
---
Este mensaje no contiene virus ni malware porque la protección de avast! Antivirus está activa.
http://www.avast.com

cambiar color en TextOut

Posted: Thu Apr 03, 2014 8:31 am
by pacoelche
Gracias por la aclaración.
Ahora he conseguido lo que querí­a.
Un saludo
Francisco Martí­nez
"Contacto en Xailer" <contacto@especta.com.ar> escribió en el mensaje news:533c231d$1@svctag-j7w3v3j....
Hola Francisco
Cuando escribis CLR_RED estás indicando al compilador que utilice la
definicion del archivo Colors.ch que dice:
#define CLR_RED 0x000080
O sea, que en realidad lo que pasas a la TextOut es el número 0x000080,
que esta en hexadecimal y es el número 128 en decimal
En el formato RGB es el color Rojo.
Vos le estas pasando el string "CLR_RED"
Deberí­as pasarle el numero de color rgb que podés calcularlo con:
(( r + ( g * 256 ) + ( b * 256 * 256 ) ))
Saludos.
El 02/04/2014 05:48 a.m., Francisco Martí­nez Garcí­a escribió:
> Quisiera cambiar el color en un TextOut, pero utilizando una variable,
> no indicándo directamente el color.
> Si pongo :TextOut(100,100,"Prueba",,CLR_RED) me imprime en rojo, pero si
> pongo:
> nColor:="CLR_RED"
> :TextOut(100,100,"Prueba,,nColor)me imprime en el color por omisión NEGRO.
> ¿Como puedo hacer, en este segundo caso, para que asuma el color de la
> variable nColor.
> Mil gracias anticipadas
---
Este mensaje no contiene virus ni malware porque la protección de avast! Antivirus está activa.
http://www.avast.com
--