FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Color get en rojo si es negativo...Anexo imagen
Posts: 632
Joined: Tue Dec 12, 2006 07:34 PM
Color get en rojo si es negativo...Anexo imagen
Posted: Fri Feb 21, 2014 08:34 PM
Hola buenas tardes amigos,como estan, espero que bien.!

Andube buscando por el foro al igual en los samples, pero no encontre nada parecido a lo que quiero hacer en los campos de gets de Cargos y Abonos.
Resulta que al teclear un importe negativo que me muestre en color rojo,pero no logro dar con el resultado de lo que quiero hacer, para mayor comprension lo que quiero hacer,adjunto la imagen de un ejemplo de un sistema de contabilidad de ContPaq.

Gracias , no pude subirlo en 4shared, pero si logre con el imageshack.com



https://imageshack.com/i/giisrtj



Que me muestre el caracter del texto del importe en rojo, cuando es negativo, y si no es negativo, que me muestre el caracter a su color normal.

Saludos
Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
Re: Color get en rojo si es negativo...
Posted: Fri Feb 21, 2014 08:47 PM

acá:

www.4shared.com

salu2

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
Re: Color get en rojo si es negativo...
Posted: Fri Feb 21, 2014 08:51 PM
Code (fw): Select all Collapse
    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}
    //-> Mudar a cor
    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 )

//

ó

//
: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 )
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Color get en rojo si es negativo...
Posted: Fri Feb 21, 2014 08:51 PM

O tambien:

https://imageshack.com/‎

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 632
Joined: Tue Dec 12, 2006 07:34 PM
Re: Color get en rojo si es negativo...
Posted: Fri Feb 21, 2014 10:37 PM
cnavarro wrote:O tambien:
https://imageshack.com/‎


Alguien tiene idea de lo que quiero hacer ?....

Saludos.
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: Color get en rojo si es negativo...Anexo imagen
Posted: Sat Feb 22, 2014 01:45 AM

Creo que si es tecleandolo y que luego se ponga rojo, puedes usar el color del texto bajo condicion despues que el get pierda el focus, dependiendo si el valor es menor q cero, entonces pones letras en rojo con el fondo como quieras, de lo contrario, lo dejas como esta o colocas algun color, es la idea, nose si hacerlo es tan facil como decirlo, saludos... :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 6755
Joined: Wed Feb 15, 2012 08:25 PM
Re: Color get en rojo si es negativo...Anexo imagen
Posted: Sat Feb 22, 2014 12:24 PM

Yo no se si hay un PICTURE que haga automaticamente eso cuando detecta en un campo numérico que se escriba el carácter -
Puedes probar asi
@ nf, nC GET oGet VAR nGet .... ;
VALID (if( oGet:VarGet() < 0, (oGet:SetColor( CLR_HRED, CLR_WHITE ),oGet:Refresh(), .T.), .T. ))

Aunque si funciona, yo crearía una función pasando el objeto get y que siempre devuelva .T. y así no te producirá problemas con el resto de VALIDs que puedas tener en los GETs definidos y en los que tengas que aplicarlo
Espero te sirva de algo

Cristobal Navarro

Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo

El secreto de la felicidad no está en hacer lo que te gusta, sino en que te guste lo que haces
Posts: 632
Joined: Tue Dec 12, 2006 07:34 PM
Re: Color get en rojo si es negativo...Anexo imagen
Posted: Mon Feb 24, 2014 04:56 PM
cnavarro wrote:Yo no se si hay un PICTURE que haga automaticamente eso cuando detecta en un campo numérico que se escriba el carácter `-`
Puedes probar asi
@ nf, nC GET oGet VAR nGet .... ;
VALID (if( oGet:VarGet() < 0, (oGet:SetColor( CLR_HRED, CLR_WHITE ),oGet:Refresh(), .T.), .T. ))

Aunque si funciona, yo crearía una función pasando el objeto get y que siempre devuelva .T. y así no te producirá problemas con el resto de VALIDs que puedas tener en los GETs definidos y en los que tengas que aplicarlo
Espero te sirva de algo



Gracias a todos los que me respondieron, muchas gracias y gusto saludarles.

Continue the discussion