Cambiar el color de la fuente de un combo segun una condicion

23/01/2007 - 18:59 por news microsoft | Informe spam
Hola a todos, quisiera saber si se puede cambiar de alguna manera el color
de la fuente de alguna linea en un combo. En una pantalla que estoy haciendo
he puesto un combo para elegir un dato y quiero diferenciar los ya elegidos
cambiando el color de la fuente si se puede. Necesito que sea un control que
se pueda desplegar como el combo. Si a alguien se le ocurre algo acepto
ideas.
Muchas gracias

Preguntas similare

Leer las respuestas

#1 Dario David Puccio
24/01/2007 - 02:05 | Informe spam
Te envio un codigo...

En el init del formulario

#DEFINE RedBar ,RGB(150,0,0)
#DEFINE GreenBar ,RGB(0,150,0)
#DEFINE BlueBar ,RGB(0,0,255)
#DEFINE YellowBar ,RGB(255,255,0)

DEFINE POPUP MultiColor

DEFINE BAR 1 of MultiColor ;
Prompt "Red" COLOR RedBar

DEFINE BAR 2 of MultiColor ;
Prompt "Green" COLOR GreenBar

DEFINE BAR 3 of MultiColor ;
Prompt "Blue" COLOR BlueBar

DEFINE BAR 4 of MultiColor ;
Prompt "Yellow" COLOR YellowBar

en el combo...
RowSourceType = 9 - popup
RowSource = "MultiColor" (without quote)

en el InteractiveChange dol combo
DO CASE
CASE This.Value = "Red"
This.Forecolor = RGB(150,0,0)
CASE This.Value = "Green"
This.Forecolor = RGB(0,150,0)
CASE This.Value = "Blue"
This.Forecolor = RGB(0,0,255)
CASE This.Value = "Yellow"
This.Forecolor = RGB(255,255,0)
ENDCASE

Espero te sirva...
Respuesta Responder a este mensaje
#2 jc
24/01/2007 - 12:37 | Informe spam
Gracias ante todo, he echo lo que me pusiste pero no consigo que al
desplegar el combo, los elementos del combo aparezcan en color.
Te voy a poner un ejemplo de lo que hago. El contenido del combo lo calculo
segun un cursor de la siguiente manera:


DEFINE POPUP aLista
SELECT tabla1
n = 0
SCAN
SELECT tabla2
APPEND BLANK
REPLACE codigo WITH tabla1.codigo
n=n+1
cBarra = "DEFINE BAR "+ALLTRIM(STR(n))+" OF aLista PROMPT
'"+codigo+"' COLOR "
IF condicion
cBarra = cBarra + " RGB(0,0,150)"
ELSE
cBarra = cBarra + " RGB(255,0,0)"
ENDIF
&cBarra
ENDSCAN

combo1.rowsourcetype = 9
combo1.rowsource = "aLista"

Hago esto y me salen los elementos de la lista en negro el color de fuente
del combo. Que hago mal? Gracias

"Dario David Puccio" escribió en el mensaje
news:%
Te envio un codigo...

En el init del formulario

#DEFINE RedBar ,RGB(150,0,0)
#DEFINE GreenBar ,RGB(0,150,0)
#DEFINE BlueBar ,RGB(0,0,255)
#DEFINE YellowBar ,RGB(255,255,0)

DEFINE POPUP MultiColor

DEFINE BAR 1 of MultiColor ;
Prompt "Red" COLOR RedBar

DEFINE BAR 2 of MultiColor ;
Prompt "Green" COLOR GreenBar

DEFINE BAR 3 of MultiColor ;
Prompt "Blue" COLOR BlueBar

DEFINE BAR 4 of MultiColor ;
Prompt "Yellow" COLOR YellowBar

en el combo...
RowSourceType = 9 - popup
RowSource = "MultiColor" (without quote)

en el InteractiveChange dol combo
DO CASE
CASE This.Value = "Red"
This.Forecolor = RGB(150,0,0)
CASE This.Value = "Green"
This.Forecolor = RGB(0,150,0)
CASE This.Value = "Blue"
This.Forecolor = RGB(0,0,255)
CASE This.Value = "Yellow"
This.Forecolor = RGB(255,255,0)
ENDCASE

Espero te sirva...



Respuesta Responder a este mensaje
#3 Dario David Puccio
24/01/2007 - 16:16 | Informe spam
"jc" <j.c> escribió en el mensaje
news:
Gracias ante todo, he echo lo que me pusiste pero no consigo que al
desplegar el combo, los elementos del combo aparezcan en color.
Te voy a poner un ejemplo de lo que hago. El contenido del combo lo
calculo segun un cursor de la siguiente manera:



Te falta la coma delante del color



IF condicion
cBarra = cBarra + " RGB(0,0,150)"



cBarra = cBarra + " ,RGB(0,0,150)"

Dario
Respuesta Responder a este mensaje
#4 jc
31/01/2007 - 08:48 | Informe spam
Muchas gracias ya me funciona!

"Dario David Puccio" escribió en el mensaje
news:

"jc" <j.c> escribió en el mensaje
news:
Gracias ante todo, he echo lo que me pusiste pero no consigo que al
desplegar el combo, los elementos del combo aparezcan en color.
Te voy a poner un ejemplo de lo que hago. El contenido del combo lo
calculo segun un cursor de la siguiente manera:



Te falta la coma delante del color



IF condicion
cBarra = cBarra + " RGB(0,0,150)"



cBarra = cBarra + " ,RGB(0,0,150)"

Dario



Respuesta Responder a este mensaje
#5 Dario David Puccio
31/01/2007 - 13:39 | Informe spam
Mejor asi... :)


Dario
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida