Quisiera saber como cambiar las propiedades (color de texto ó fondo, u
otras) en un array browse en función del valor de un elemento del array
por ejemplo poner en rojo la primera columna si la cuarta es un valor
negativo y en azul si es positivo.
Gracias
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.
Cambio en las propiedades de un TarrayBrowse
-
- Mensajes: 16
- Registrado: Jue Abr 06, 2006 6:22 pm
Cambio en las propiedades de un TarrayBrowse
Emilio,
"emilio gil" <emiliogil@ya.com> escribió en el mensaje
news:491c61cc$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Quisiera saber como cambiar las propiedades (color de texto ó fondo, u
> otras) en un array browse en función del valor de un elemento del array
> por ejemplo poner en rojo la primera columna si la cuarta es un valor
> negativo y en azul si es positivo.
Por ejemplo,
En una de las columnas que tienes, haces click, y en el inspector de objetos
marcas la pestaña eventos.
Sobre el evento 'ondrawcell' haces doble click. En el editor de texto te
aparece algo así.
METHOD ArrayBrowse1Column1DrawCell( oSender, cText, nClrText, nClrPane,
lHighLite, hDC, aRect ) CLASS TForm2
RETURN Nil
Entonces... si quieres que el fondo de esa celda sea de color amarillo según
una condición puedes hacer algo parecido a esto
METHOD ArrayBrowse1Column2DrawCell( oSender, cText, nClrText, nClrPane,
lHighLite, hDC, aRect ) CLASS TForm3
IF oSender:oParent:aArrayData[ oSender:oParent:nArrayAt][oSender:nPos] == 1
// nuestra condicion
nClrPane := clYellow
ENDIF
RETURN Nil
Osender es el objeto brwcolumn (la columna). Su padre (el oparent) es el
arrayBrowse. Entonces... a través de osender accedemos al browse (el
oparent). Así... de esta manera podemos saber en cual fila estamos
(nArrayAt) y en que columna (nPos). El resto... es cambiar los colores y
resto de datos a nuestro antojo.
Ojo con el return nil.
Espero que te ayude.
Saludos,
José Luis Capel
"emilio gil" <emiliogil@ya.com> escribió en el mensaje
news:491c61cc$[email=1@ozsrv2.ozlan.local...]1@ozsrv2.ozlan.local...[/email]
> Quisiera saber como cambiar las propiedades (color de texto ó fondo, u
> otras) en un array browse en función del valor de un elemento del array
> por ejemplo poner en rojo la primera columna si la cuarta es un valor
> negativo y en azul si es positivo.
Por ejemplo,
En una de las columnas que tienes, haces click, y en el inspector de objetos
marcas la pestaña eventos.
Sobre el evento 'ondrawcell' haces doble click. En el editor de texto te
aparece algo así.
METHOD ArrayBrowse1Column1DrawCell( oSender, cText, nClrText, nClrPane,
lHighLite, hDC, aRect ) CLASS TForm2
RETURN Nil
Entonces... si quieres que el fondo de esa celda sea de color amarillo según
una condición puedes hacer algo parecido a esto
METHOD ArrayBrowse1Column2DrawCell( oSender, cText, nClrText, nClrPane,
lHighLite, hDC, aRect ) CLASS TForm3
IF oSender:oParent:aArrayData[ oSender:oParent:nArrayAt][oSender:nPos] == 1
// nuestra condicion
nClrPane := clYellow
ENDIF
RETURN Nil
Osender es el objeto brwcolumn (la columna). Su padre (el oparent) es el
arrayBrowse. Entonces... a través de osender accedemos al browse (el
oparent). Así... de esta manera podemos saber en cual fila estamos
(nArrayAt) y en que columna (nPos). El resto... es cambiar los colores y
resto de datos a nuestro antojo.
Ojo con el return nil.
Espero que te ayude.
Saludos,
José Luis Capel