Muy buenas, ¿Sabeis como puedo cambiar el color de una celda en un listbox?
Un Saludo.
Cambiar color de una celda Listbox
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
- cuatecatl82
- Posts: 614
- Joined: Wed Mar 14, 2007 6:49 pm
- Location: San Cristobal de las Casas, Chiapas México
- Contact:
softruz:
Yo lo hago así desde un TWbrowse talves te pueda servir.. aki pinto un dia del mes de color diferente..
REDEFINE LISTBOX oLbx FIELDS "";
ALIAS "AUDITOR" ID 100 OF oDlg
oLbx:Set3DStyle()
oLbx:lHScroll := .F.
oLbx:bLine := {|| { AUDITOR->USUARIO, AUDITOR->NIVEL, CVALTOCHAR(AUDITOR->FECHA), AUDITOR->HORA, AUDITOR->ACCION} }
oLbx:aHeaders := { "Usuario","Privilegio","Fecha","Hora","Acción Realizada" }
oLbx:aHJustify := {2,2,2,2,2}
oLbx:nClrPane := {|| IIF( (oLbx:cAlias)->(OrdKeyNo())%2=0, nRGB(255,255,255), ColorDia(AUDITOR->FECHA) ) }
oLbx:lAdjLastCol := .T.
oLbx:lAdjBrowse := .T.
//----------------------------------------------------------------------------//
STATIC FUNCTION ColorDia(dDate)
LOCAL cRGBColor:= ""
LOCAL nDia:= 0
nDia:= STRZERO(DAY(dDate),2)
IF nDia == "01"
cRGBColor:= nRGB(255,253,196)
ELSEIF nDia == "02"
cRGBColor:= nRGB(208,202,183)
ELSEIF nDia == "03"
cRGBColor:= nRGB(222,235,255)
ELSEIF nDia == "04"
cRGBColor:= nRGB(206,255,196)
ELSEIF nDia == "05"
cRGBColor:= nRGB(255,235,206)
ELSEIF nDia == "06"
cRGBColor:= nRGB(194,230,253)
ELSEIF nDia == "07"
cRGBColor:= nRGB(255,238,255)
ELSEIF nDia == "08"
cRGBColor:= nRGB(173,207,247)
ELSEIF nDia == "09"
cRGBColor:= nRGB(228,222,203)
ELSEIF nDia == "10"
cRGBColor:= nRGB(180,222,185)
ELSEIF nDia == "11"
cRGBColor:= nRGB(217,228,255)
ELSEIF nDia == "12"
cRGBColor:= nRGB(202,255,239)
ELSEIF nDia == "13"
cRGBColor:= nRGB(255,226,204)
ELSEIF nDia == "14"
cRGBColor:= nRGB(246,220,255)
ELSEIF nDia == "15"
cRGBColor:= nRGB(226,255,216)
ELSEIF nDia == "16"
cRGBColor:= nRGB(250,222,237)
ELSEIF nDia == "17"
cRGBColor:= nRGB(251,255,224)
ELSEIF nDia == "18"
cRGBColor:= nRGB(234,255,211)
ELSEIF nDia == "19"
cRGBColor:= nRGB(255,210,211)
ELSEIF nDia == "20"
cRGBColor:= nRGB(255,240,255)
ELSEIF nDia == "21"
cRGBColor:= nRGB(217,222,180)
ELSEIF nDia == "22"
cRGBColor:= nRGB(254,255,231)
ELSEIF nDia == "23"
cRGBColor:= nRGB(231,255,204)
ELSEIF nDia == "24"
cRGBColor:= nRGB(211,235,184)
ELSEIF nDia == "25"
cRGBColor:= nRGB(255,246,224)
ELSEIF nDia == "26"
cRGBColor:= nRGB(255,230,231)
ELSEIF nDia == "27"
cRGBColor:= nRGB(239,235,222)
ELSEIF nDia == "28"
cRGBColor:= nRGB(255,233,176)
ELSEIF nDia == "29"
cRGBColor:= nRGB(231,239,222)
ELSEIF nDia == "30"
cRGBColor:= nRGB(255,255,213)
ELSEIF nDia == "31"
cRGBColor:= nRGB(248,242,223)
ENDIF
RETURN cRGBColor
Ojala y te de una idea..
Saludos..
www.sisa.unlugar.com
www.soldisoft.unlugar.com
Yo lo hago así desde un TWbrowse talves te pueda servir.. aki pinto un dia del mes de color diferente..
REDEFINE LISTBOX oLbx FIELDS "";
ALIAS "AUDITOR" ID 100 OF oDlg
oLbx:Set3DStyle()
oLbx:lHScroll := .F.
oLbx:bLine := {|| { AUDITOR->USUARIO, AUDITOR->NIVEL, CVALTOCHAR(AUDITOR->FECHA), AUDITOR->HORA, AUDITOR->ACCION} }
oLbx:aHeaders := { "Usuario","Privilegio","Fecha","Hora","Acción Realizada" }
oLbx:aHJustify := {2,2,2,2,2}
oLbx:nClrPane := {|| IIF( (oLbx:cAlias)->(OrdKeyNo())%2=0, nRGB(255,255,255), ColorDia(AUDITOR->FECHA) ) }
oLbx:lAdjLastCol := .T.
oLbx:lAdjBrowse := .T.
//----------------------------------------------------------------------------//
STATIC FUNCTION ColorDia(dDate)
LOCAL cRGBColor:= ""
LOCAL nDia:= 0
nDia:= STRZERO(DAY(dDate),2)
IF nDia == "01"
cRGBColor:= nRGB(255,253,196)
ELSEIF nDia == "02"
cRGBColor:= nRGB(208,202,183)
ELSEIF nDia == "03"
cRGBColor:= nRGB(222,235,255)
ELSEIF nDia == "04"
cRGBColor:= nRGB(206,255,196)
ELSEIF nDia == "05"
cRGBColor:= nRGB(255,235,206)
ELSEIF nDia == "06"
cRGBColor:= nRGB(194,230,253)
ELSEIF nDia == "07"
cRGBColor:= nRGB(255,238,255)
ELSEIF nDia == "08"
cRGBColor:= nRGB(173,207,247)
ELSEIF nDia == "09"
cRGBColor:= nRGB(228,222,203)
ELSEIF nDia == "10"
cRGBColor:= nRGB(180,222,185)
ELSEIF nDia == "11"
cRGBColor:= nRGB(217,228,255)
ELSEIF nDia == "12"
cRGBColor:= nRGB(202,255,239)
ELSEIF nDia == "13"
cRGBColor:= nRGB(255,226,204)
ELSEIF nDia == "14"
cRGBColor:= nRGB(246,220,255)
ELSEIF nDia == "15"
cRGBColor:= nRGB(226,255,216)
ELSEIF nDia == "16"
cRGBColor:= nRGB(250,222,237)
ELSEIF nDia == "17"
cRGBColor:= nRGB(251,255,224)
ELSEIF nDia == "18"
cRGBColor:= nRGB(234,255,211)
ELSEIF nDia == "19"
cRGBColor:= nRGB(255,210,211)
ELSEIF nDia == "20"
cRGBColor:= nRGB(255,240,255)
ELSEIF nDia == "21"
cRGBColor:= nRGB(217,222,180)
ELSEIF nDia == "22"
cRGBColor:= nRGB(254,255,231)
ELSEIF nDia == "23"
cRGBColor:= nRGB(231,255,204)
ELSEIF nDia == "24"
cRGBColor:= nRGB(211,235,184)
ELSEIF nDia == "25"
cRGBColor:= nRGB(255,246,224)
ELSEIF nDia == "26"
cRGBColor:= nRGB(255,230,231)
ELSEIF nDia == "27"
cRGBColor:= nRGB(239,235,222)
ELSEIF nDia == "28"
cRGBColor:= nRGB(255,233,176)
ELSEIF nDia == "29"
cRGBColor:= nRGB(231,239,222)
ELSEIF nDia == "30"
cRGBColor:= nRGB(255,255,213)
ELSEIF nDia == "31"
cRGBColor:= nRGB(248,242,223)
ENDIF
RETURN cRGBColor
Ojala y te de una idea..
Saludos..
www.sisa.unlugar.com
www.soldisoft.unlugar.com