Página 1 de 1

Pintar columna browse con color diferente

Publicado: Vie Nov 09, 2007 9:38 am
por jose.luis
Hola,
Quiero pintar una columna de un browse de un color distinto al resto.
Para ello hago algo parecido a esto:
METHOD PintadoColumnaCantidadPedidos( oSender, cText, nClrText, nClrPane,
lHighLite, hDC, aRect ) CLASS miformulario
nClrPane := RGB(100,200,100) // por ejemplo
RETURN .T.
En el browse tengo definido nMarqueeStyle como bmHIGHLROW.
Tengo una pregunta:
No se como conseguir que la columna que tiene el pintado especial pueda
pintarse con el ::nClrSelPane / ::nClrSelText / ::nClrSelFocusPane /
::nClrSelFocusText. Por lo que he visto en la ayuda al evento ondrawcell
solo le llega un valor lHighlite y los dos colores para pintar con lo que no
se como averiguar si la fila que se pinta es la 'actual' o no para aplicar
un color u otro. En la imagen os dejo un ejemplo de lo que quiero
conseguir.
Saludos y gracias,
José Luis Capel



Attached files ccccc.zip (1.8 KB)Â

Pintar columna browse con color diferente

Publicado: Vie Nov 09, 2007 12:46 pm
por Xevi
José Luis,
Es el mismo parámetro lHighlite el que debes utilizar...
If !lHighLite
nClrPane := RGB(255,255,0)
EndIf
Te adjunto el ejemplo funcionando como creo deseas.
Un Saludo,
Xevi.
"José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje de
noticias news:47341c0e$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Hola,
>
> Quiero pintar una columna de un browse de un color distinto al resto.
>
> Para ello hago algo parecido a esto:
>
> METHOD PintadoColumnaCantidadPedidos( oSender, cText, nClrText, nClrPane,
> lHighLite, hDC, aRect ) CLASS miformulario
> nClrPane := RGB(100,200,100) // por ejemplo
> RETURN .T.
>
> En el browse tengo definido nMarqueeStyle como bmHIGHLROW.
>
> Tengo una pregunta:
>
> No se como conseguir que la columna que tiene el pintado especial pueda
> pintarse con el ::nClrSelPane / ::nClrSelText / ::nClrSelFocusPane /
> ::nClrSelFocusText. Por lo que he visto en la ayuda al evento ondrawcell
> solo le llega un valor lHighlite y los dos colores para pintar con lo que
> no se como averiguar si la fila que se pinta es la 'actual' o no para
> aplicar un color u otro. En la imagen os dejo un ejemplo de lo que quiero
> conseguir.
>
> Saludos y gracias,
> José Luis Capel
>
>
>
>
--

Attached files ccccc.zip (1.8 KB)Â

Pintar columna browse con color diferente

Publicado: Vie Nov 09, 2007 1:01 pm
por jose.luis
Xevi,
Gracias!! Se ve que no he entendido bien el texto de ayuda :-(
Saludos,
José Luis Capel
"Xevi" <xevicomas@gmail.com> escribió en el mensaje
news:[email=473448ad@ozsrv2.ozlan.local...]473448ad@ozsrv2.ozlan.local...[/email]
> José Luis,
>
> Es el mismo parámetro lHighlite el que debes utilizar...
>
> If !lHighLite
> nClrPane := RGB(255,255,0)
> EndIf
>
> Te adjunto el ejemplo funcionando como creo deseas.
>
>
> Un Saludo,
> Xevi.
>
>
> "José Luis Capel - Aicom" <jose.luis@iaicom.com> escribió en el mensaje de
> noticias news:47341c0e$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Hola,
>>
>> Quiero pintar una columna de un browse de un color distinto al resto.
>>
>> Para ello hago algo parecido a esto:
>>
>> METHOD PintadoColumnaCantidadPedidos( oSender, cText, nClrText, nClrPane,
>> lHighLite, hDC, aRect ) CLASS miformulario
>> nClrPane := RGB(100,200,100) // por ejemplo
>> RETURN .T.
>>
>> En el browse tengo definido nMarqueeStyle como bmHIGHLROW.
>>
>> Tengo una pregunta:
>>
>> No se como conseguir que la columna que tiene el pintado especial pueda
>> pintarse con el ::nClrSelPane / ::nClrSelText / ::nClrSelFocusPane /
>> ::nClrSelFocusText. Por lo que he visto en la ayuda al evento ondrawcell
>> solo le llega un valor lHighlite y los dos colores para pintar con lo que
>> no se como averiguar si la fila que se pinta es la 'actual' o no para
>> aplicar un color u otro. En la imagen os dejo un ejemplo de lo que
>> quiero
>> conseguir.
>>
>> Saludos y gracias,
>> José Luis Capel
>>
>>
>>
>>
>

Pintar columna browse con color diferente

Publicado: Vie Nov 09, 2007 1:03 pm
por jrcpoli-quitar
José Luis:
Curioso si lo haces desde el IDE sin usar eventos si funciona.
José Ramón Castro.
José Luis Capel - Aicom escribió:
> Hola,
>
> Quiero pintar una columna de un browse de un color distinto al resto.
>
> Para ello hago algo parecido a esto:
>
> METHOD PintadoColumnaCantidadPedidos( oSender, cText, nClrText, nClrPane,
> lHighLite, hDC, aRect ) CLASS miformulario
> nClrPane := RGB(100,200,100) // por ejemplo
> RETURN .T.
>
> En el browse tengo definido nMarqueeStyle como bmHIGHLROW.
>
> Tengo una pregunta:
>
> No se como conseguir que la columna que tiene el pintado especial pueda
> pintarse con el ::nClrSelPane / ::nClrSelText / ::nClrSelFocusPane /
> ::nClrSelFocusText. Por lo que he visto en la ayuda al evento ondrawcell
> solo le llega un valor lHighlite y los dos colores para pintar con lo que no
> se como averiguar si la fila que se pinta es la 'actual' o no para aplicar
> un color u otro. En la imagen os dejo un ejemplo de lo que quiero
> conseguir.
>
> Saludos y gracias,
> José Luis Capel
>
>
>
--