Page 1 of 1
Colorear celda en xBrows según sus datos ?
Posted: Mon Sep 17, 2007 12:17 am
by Ruben D. Fernandez
Amigos:
No encontre un ejemplo en el xBrowse...
Como puedo colorear una celda según tenga
un dato positivo o negativo y se actualice cada vez que cambia ?
Disculpen pero no encontre la forma
Gracias.
Ruben Fernandez.
Re: Colorear celda en xBrows según sus datos ?
Posted: Mon Sep 17, 2007 10:07 am
by Manuel Aranda
Prueba esto:
oLbx:aCols[ 4 ]:bClrStd := {|| { iif( Datos->Valor < 1, CLR_HRED, CLR_HBLUE), CLR_WHITE} }
Un saludo,
Manuel
Ruben D. Fernandez wrote:Amigos:
No encontre un ejemplo en el xBrowse...
Como puedo colorear una celda según tenga
un dato positivo o negativo y se actualice cada vez que cambia ?
Disculpen pero no encontre la forma
Gracias.
Ruben Fernandez.
Posted: Mon Sep 17, 2007 12:45 pm
by Ruben D. Fernandez
GRACIAS Manuel...
Funcionó perfecto.
Saludos
Ruben Fernandez
Posted: Thu Sep 20, 2007 12:04 pm
by QAZWSX2K
SALUDOS, DONDE Y COMO DEFINO aCols[ 4 ], O PODRIAS PONER EL EJEMPLO COMPLETO Y DISCULPEN EL ABUSO, GRACIAS
Posted: Thu Sep 20, 2007 1:32 pm
by Biel EA6DD
xBrose tiene un data aCols que es un array de objetos columna, es decir tantos elementos como colunas tengas en el txBrowse.
Luego bClrStd es un data del objheto columna, que esta dentro del array aCols que a su vez es un data del objeto txBrowse.
oBrw:aCols[numero de columna]:bClrStd ...
Tambien podria definirse en el momento de crear la columna, algo así
Code: Select all
oBrw := TXBrowse():New(oWnd)
...
oCol := oBrw:AddCol()
oCol:cHeader := 'Cabecera'
oCol:bStrData := Alias->Campo
oCol:bClrStd := {||{CLR_HBLUE,CLR_WHITE}} //Color estandar
oCol:bClrSel := {||{CLR_BLACK,RGB(157,255,255)}} //Color elemento seleccionado
...
Posted: Thu Sep 20, 2007 4:03 pm
by QAZWSX2K
GRACIAS BIEL
Posted: Fri Sep 21, 2007 2:08 pm
by un_jeepero
Hola Biel,
Como le haces para colorear lineas intercaladas utilizando la TXbrowse
me podrias dar un ejemplo por favor
gracias
salu2
Mauro
Posted: Fri Sep 21, 2007 2:57 pm
by Biel EA6DD
Hola Mauro,
ya se ha comentado otras veces en el foro. Para txBrose seria con el siguiente código.
Code: Select all
oBrw:bClrStd:=ClrStd()
//-----------------------
STATIC FUNCTION ClrStd()
//-----------------------
LOCAL aCol:={}
IF alias->(ordkeyno()) % 2 == 0
aCol:={CLR_BLACK, RGB(193,221,255) }
ELSE
aCol:={CLR_BLACK, RGB(221,245,255) }
ENDIF
RETURN aCol
Posted: Fri Sep 21, 2007 10:27 pm
by un_jeepero
Gracias por tu respuesta Gabriel.
Habia visto publicaciones anteriores, pero no me funcionan esto es lo que realizo en una Wnd..
colorea solamente si no esta la linea de ::oBrw:cAlias := ::oDbf:cAlias
::oBrw := TXBrowse():New( ::oWnd )
::oBrw:cAlias := ::oDbf:cAlias
::oBrw:bClrStd := { || Colores() }
::oCol := Array( 02 )
::oCol[01] := ::oBrw:AddCol()
::oCol[01]:cHeader := "Sucursal"
::oCol[01]:bStrData := { || ::oLoc:desloc }
::oCol[01]:nWidth := 90
..
..
::oBrw:bKeydown := { | nKey | ::Modifica( ::oDbf:RecNo()) }
::oBrw:CreateFromCode()
//-----------------------
STATIC FUNCTION Colores()
LOCAL aCol:={}
IF (ordkeyno()) % 2 == 0
aCol:={CLR_BLACK, RGB(193,221,255) }
ELSE
aCol:={CLR_BLACK, RGB(221,245,255) }
ENDIF
RETURN (aCol)
Muchas gracias
salu2
Mauro