FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Cambiar color y texto de oBar in Runtime (SOLUCIONADO)
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Cambiar color y texto de oBar in Runtime (SOLUCIONADO)
Posted: Wed Oct 06, 2010 02:10 PM

Amigos del foro:
Tengo la siguiente funcion para cambiar colores de la barra de botones y su texto. El problema es el siguiente:
al arrancar por primera vez el color del texto lo pinta bien, pero al tratar de cambiarlo en tiempo de ejecución no lo hace.
El color de la barra cambia perfectamente, no así el color del texto.
¿Alguien podría decir por qué, ó qué estoy omitiendo?

Function Color_oBar(oBar,cColor)
local n
DEFAULT cColor := NIL

IF !cColor = NIL
if cColor = "ORO"
oBar:bClrGrad := { | lInvert | If( ! lInvert, ;
{ { 1.00,14481663,38075 }, ;
{ 1.00,38075,14481663 } }, ;
{ { 0.10,16777215,9363707 },;
{ 0.10,9363707,16777215 } } ) }
oBar:nClrText = 0

elseif cColor = "NOCHE"
oBar:bClrGrad := { | lInvert | If( ! lInvert, ;
{ { 0.70,0,12429486 },;
{ 0.70,12429486,0 } },;
{ { 0.40,9928844,12429486 },;
{ 0.40,12429486,9928844 } } ) }
oBar:nClrText := 521724

elseif cColor = "BOSQUE"
oBar:bClrGrad := { | lInvert | If( ! lInvert, ;
{ { 0.60,4348740,3256493 },;
{ 0.60,3256493,4348740 } },;
{ { 0.70,8764566,65535 },;
{ 0.70,3256493,4292931 } } ) }
oBar:nClrText := 65535
endif
ENDIF

for n:= 1 to len(oBar:aControls)
oBar:aControls[n]:Refresh() //tampoco con Paint()
next
oBar:Refresh()
Return nil

Agradezco de antemano cualquier sugerencia.

Saludos

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: Cambiar color y texto de oBar in Runtime (RESUELTO)
Posted: Wed Oct 06, 2010 04:21 PM

Lo resolví con:

oBar:bClrGrad := { | lInvert | If( ! lInvert, ;
{ { 0.60,4348740,3256493 },;
{ 0.60,3256493,4348740 } },;
{ { 0.70,8764566,65535 },;
{ 0.70,3256493,4292931 } } ) }
nClrTexto:= 65535

for n:= 1 to len(oBar:aControls)
oBar:aControls[n]:nClrText := nClrTexto
oBar:aControls[n]:Refresh()
next
oBar:Refresh()

Saludos

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql

Continue the discussion