¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
Por ejemplo:
- Tengo un TDbfBrowse llamado oBrowse.
- En una de las columnas utilizo un evento OnDrawCell con las siguientes
líneas de código:
METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
lHighLite, hDC, aRect ) CLASS Allegro
SELECT CONTADOR
ctext:=H_DESDE+" a "+H_HASTA+" h."
RETURN Nil
- Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
celda cambiase de color, o tamaño.
Gracias por vuestra ayuda
pacoelche@hotmail.com
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Cambiar fuente de una celda
- ignacio
- Site Admin
- Mensajes: 9457
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Cambiar fuente de una celda
Francisco,
Si utilizando el hDC que le suministra el evento OnDrawCell() y la función
de bajo nivel SelectObject()
SelectObject( hDC, oFont:Handle )
El tamaño de la celda no se puede cambiar como es lógico.
Un saludo
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Francisco Martínez García" <pacoelche@hotmail.com> escribió en el mensaje
news:[email=4663d90e@ozsrv2.ozlan.local...]4663d90e@ozsrv2.ozlan.local...[/email]
> ¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
>
> Por ejemplo:
>
> - Tengo un TDbfBrowse llamado oBrowse.
> - En una de las columnas utilizo un evento OnDrawCell con las siguientes
> líneas de código:
>
> METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
> lHighLite, hDC, aRect ) CLASS Allegro
> SELECT CONTADOR
> ctext:=H_DESDE+" a "+H_HASTA+" h."
> RETURN Nil
>
> - Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
> celda cambiase de color, o tamaño.
>
> Gracias por vuestra ayuda
> pacoelche@hotmail.com
>
Si utilizando el hDC que le suministra el evento OnDrawCell() y la función
de bajo nivel SelectObject()
SelectObject( hDC, oFont:Handle )
El tamaño de la celda no se puede cambiar como es lógico.
Un saludo
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Francisco Martínez García" <pacoelche@hotmail.com> escribió en el mensaje
news:[email=4663d90e@ozsrv2.ozlan.local...]4663d90e@ozsrv2.ozlan.local...[/email]
> ¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
>
> Por ejemplo:
>
> - Tengo un TDbfBrowse llamado oBrowse.
> - En una de las columnas utilizo un evento OnDrawCell con las siguientes
> líneas de código:
>
> METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
> lHighLite, hDC, aRect ) CLASS Allegro
> SELECT CONTADOR
> ctext:=H_DESDE+" a "+H_HASTA+" h."
> RETURN Nil
>
> - Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
> celda cambiase de color, o tamaño.
>
> Gracias por vuestra ayuda
> pacoelche@hotmail.com
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Cambiar fuente de una celda
Gracias Ignacio:
Ya lo había conseguido con el evento OnGetData y el siguiente código. De
todas formas y siguiendo mi ejemplo, ¿cómo se puede hacer para cambiar el
color de toda una línea, sin tener que hacerlo columna a columna?, supongo
que será cambiando aCols[x] por otro código, pero ¿cual?
FOR J=1 TO 5
IF J=4 .AND. VACANTES=0
WITH OBJECT ::oBrowse:aCols[4]
:nClrText:=clWhite
:nClrPane:=clBlack
END
ELSE
WITH OBJECT ::oBrowse:aCols[J]
:nClrPane:=clWhite
DO CASE
CASE AT("ALEM",NOMBRE)>0
:nClrText:=clRed
CASE AT("FRAN",NOMBRE)>0
:nClrText:=clBlue
CASE AT("INGL",NOMBRE)>0
:nClrText:=clGreen
CASE AT("ITAL",NOMBRE)>0
:nClrText:=clMaroon
ENDCASE
END
ENDIF
NEXT
De nuevo muchas gracias.
pacoelche@hotmail.com
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
news:46641a36$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Francisco,
>
> Si utilizando el hDC que le suministra el evento OnDrawCell() y la función
> de bajo nivel SelectObject()
>
> SelectObject( hDC, oFont:Handle )
>
> El tamaño de la celda no se puede cambiar como es lógico.
>
> Un saludo
>
> --
> Ignacio Ortiz de Zúñiga
> http://www.xailer.com
>
>
> "Francisco Martínez García" <pacoelche@hotmail.com> escribió en el mensaje
> news:[email=4663d90e@ozsrv2.ozlan.local...]4663d90e@ozsrv2.ozlan.local...[/email]
>> ¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
>>
>> Por ejemplo:
>>
>> - Tengo un TDbfBrowse llamado oBrowse.
>> - En una de las columnas utilizo un evento OnDrawCell con las siguientes
>> líneas de código:
>>
>> METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
>> lHighLite, hDC, aRect ) CLASS Allegro
>> SELECT CONTADOR
>> ctext:=H_DESDE+" a "+H_HASTA+" h."
>> RETURN Nil
>>
>> - Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
>> celda cambiase de color, o tamaño.
>>
>> Gracias por vuestra ayuda
>> pacoelche@hotmail.com
>>
>
>
Ya lo había conseguido con el evento OnGetData y el siguiente código. De
todas formas y siguiendo mi ejemplo, ¿cómo se puede hacer para cambiar el
color de toda una línea, sin tener que hacerlo columna a columna?, supongo
que será cambiando aCols[x] por otro código, pero ¿cual?
FOR J=1 TO 5
IF J=4 .AND. VACANTES=0
WITH OBJECT ::oBrowse:aCols[4]
:nClrText:=clWhite
:nClrPane:=clBlack
END
ELSE
WITH OBJECT ::oBrowse:aCols[J]
:nClrPane:=clWhite
DO CASE
CASE AT("ALEM",NOMBRE)>0
:nClrText:=clRed
CASE AT("FRAN",NOMBRE)>0
:nClrText:=clBlue
CASE AT("INGL",NOMBRE)>0
:nClrText:=clGreen
CASE AT("ITAL",NOMBRE)>0
:nClrText:=clMaroon
ENDCASE
END
ENDIF
NEXT
De nuevo muchas gracias.
pacoelche@hotmail.com
"Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
news:46641a36$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Francisco,
>
> Si utilizando el hDC que le suministra el evento OnDrawCell() y la función
> de bajo nivel SelectObject()
>
> SelectObject( hDC, oFont:Handle )
>
> El tamaño de la celda no se puede cambiar como es lógico.
>
> Un saludo
>
> --
> Ignacio Ortiz de Zúñiga
> http://www.xailer.com
>
>
> "Francisco Martínez García" <pacoelche@hotmail.com> escribió en el mensaje
> news:[email=4663d90e@ozsrv2.ozlan.local...]4663d90e@ozsrv2.ozlan.local...[/email]
>> ¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
>>
>> Por ejemplo:
>>
>> - Tengo un TDbfBrowse llamado oBrowse.
>> - En una de las columnas utilizo un evento OnDrawCell con las siguientes
>> líneas de código:
>>
>> METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
>> lHighLite, hDC, aRect ) CLASS Allegro
>> SELECT CONTADOR
>> ctext:=H_DESDE+" a "+H_HASTA+" h."
>> RETURN Nil
>>
>> - Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
>> celda cambiase de color, o tamaño.
>>
>> Gracias por vuestra ayuda
>> pacoelche@hotmail.com
>>
>
>
- ignacio
- Site Admin
- Mensajes: 9457
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Cambiar fuente de una celda
Francisco,
No se puede. Lo más sencillo es hacer que el evento OnDrawCell de todas las
columnas apunten al mismo código.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Francisco Martínez García" <pacoelche@hotmail.com> escribió en el mensaje
news:466450ba$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Gracias Ignacio:
>
> Ya lo había conseguido con el evento OnGetData y el siguiente código. De
> todas formas y siguiendo mi ejemplo, ¿cómo se puede hacer para cambiar el
> color de toda una línea, sin tener que hacerlo columna a columna?, supongo
> que será cambiando aCols[x] por otro código, pero ¿cual?
>
> FOR J=1 TO 5
> IF J=4 .AND. VACANTES=0
> WITH OBJECT ::oBrowse:aCols[4]
> :nClrText:=clWhite
> :nClrPane:=clBlack
> END
> ELSE
> WITH OBJECT ::oBrowse:aCols[J]
> :nClrPane:=clWhite
> DO CASE
> CASE AT("ALEM",NOMBRE)>0
> :nClrText:=clRed
> CASE AT("FRAN",NOMBRE)>0
> :nClrText:=clBlue
> CASE AT("INGL",NOMBRE)>0
> :nClrText:=clGreen
> CASE AT("ITAL",NOMBRE)>0
> :nClrText:=clMaroon
> ENDCASE
> END
> ENDIF
> NEXT
>
> De nuevo muchas gracias.
> pacoelche@hotmail.com
>
>
> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
> news:46641a36$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Francisco,
>>
>> Si utilizando el hDC que le suministra el evento OnDrawCell() y la
>> función de bajo nivel SelectObject()
>>
>> SelectObject( hDC, oFont:Handle )
>>
>> El tamaño de la celda no se puede cambiar como es lógico.
>>
>> Un saludo
>>
>> --
>> Ignacio Ortiz de Zúñiga
>> http://www.xailer.com
>>
>>
>> "Francisco Martínez García" <pacoelche@hotmail.com> escribió en el
>> mensaje news:[email=4663d90e@ozsrv2.ozlan.local...]4663d90e@ozsrv2.ozlan.local...[/email]
>>> ¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
>>>
>>> Por ejemplo:
>>>
>>> - Tengo un TDbfBrowse llamado oBrowse.
>>> - En una de las columnas utilizo un evento OnDrawCell con las siguientes
>>> líneas de código:
>>>
>>> METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
>>> lHighLite, hDC, aRect ) CLASS Allegro
>>> SELECT CONTADOR
>>> ctext:=H_DESDE+" a "+H_HASTA+" h."
>>> RETURN Nil
>>>
>>> - Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
>>> celda cambiase de color, o tamaño.
>>>
>>> Gracias por vuestra ayuda
>>> pacoelche@hotmail.com
>>>
>>
>>
>
>
No se puede. Lo más sencillo es hacer que el evento OnDrawCell de todas las
columnas apunten al mismo código.
Un saludo,
--
Ignacio Ortiz de Zúñiga
http://www.xailer.com
"Francisco Martínez García" <pacoelche@hotmail.com> escribió en el mensaje
news:466450ba$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Gracias Ignacio:
>
> Ya lo había conseguido con el evento OnGetData y el siguiente código. De
> todas formas y siguiendo mi ejemplo, ¿cómo se puede hacer para cambiar el
> color de toda una línea, sin tener que hacerlo columna a columna?, supongo
> que será cambiando aCols[x] por otro código, pero ¿cual?
>
> FOR J=1 TO 5
> IF J=4 .AND. VACANTES=0
> WITH OBJECT ::oBrowse:aCols[4]
> :nClrText:=clWhite
> :nClrPane:=clBlack
> END
> ELSE
> WITH OBJECT ::oBrowse:aCols[J]
> :nClrPane:=clWhite
> DO CASE
> CASE AT("ALEM",NOMBRE)>0
> :nClrText:=clRed
> CASE AT("FRAN",NOMBRE)>0
> :nClrText:=clBlue
> CASE AT("INGL",NOMBRE)>0
> :nClrText:=clGreen
> CASE AT("ITAL",NOMBRE)>0
> :nClrText:=clMaroon
> ENDCASE
> END
> ENDIF
> NEXT
>
> De nuevo muchas gracias.
> pacoelche@hotmail.com
>
>
> "Ignacio Ortiz de Zúñiga" <NoName@xailer.com> escribió en el mensaje
> news:46641a36$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
>> Francisco,
>>
>> Si utilizando el hDC que le suministra el evento OnDrawCell() y la
>> función de bajo nivel SelectObject()
>>
>> SelectObject( hDC, oFont:Handle )
>>
>> El tamaño de la celda no se puede cambiar como es lógico.
>>
>> Un saludo
>>
>> --
>> Ignacio Ortiz de Zúñiga
>> http://www.xailer.com
>>
>>
>> "Francisco Martínez García" <pacoelche@hotmail.com> escribió en el
>> mensaje news:[email=4663d90e@ozsrv2.ozlan.local...]4663d90e@ozsrv2.ozlan.local...[/email]
>>> ¿Es posible cambiar la fuente de una celda de un TDbfBrowse?
>>>
>>> Por ejemplo:
>>>
>>> - Tengo un TDbfBrowse llamado oBrowse.
>>> - En una de las columnas utilizo un evento OnDrawCell con las siguientes
>>> líneas de código:
>>>
>>> METHOD BrowseColumn5aDrawCell( oSender, cText, nClrText, nClrPane,
>>> lHighLite, hDC, aRect ) CLASS Allegro
>>> SELECT CONTADOR
>>> ctext:=H_DESDE+" a "+H_HASTA+" h."
>>> RETURN Nil
>>>
>>> - Me gustaría, por ejemplo, que si ctext fuese igual a un texto "x", esa
>>> celda cambiase de color, o tamaño.
>>>
>>> Gracias por vuestra ayuda
>>> pacoelche@hotmail.com
>>>
>>
>>
>
>
Ignacio Ortiz de Zúñiga
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com
[OZ Software]
https://www.ozs.es
--
[Equipo de Xailer / Xailer team]
https://www.xailer.com