Page 1 of 1

Color get en rojo si es negativo...Anexo imagen

Posted: Fri Feb 21, 2014 8:34 pm
by ACC69
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


Image
https://imageshack.com/i/giisrtj

Image

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

Re: Color get en rojo si es negativo...

Posted: Fri Feb 21, 2014 8:47 pm
by karinha
acá:

www.4shared.com

salu2

Re: Color get en rojo si es negativo...

Posted: Fri Feb 21, 2014 8:51 pm
by karinha

Code: Select all | Expand


    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 )
 

Re: Color get en rojo si es negativo...

Posted: Fri Feb 21, 2014 8:51 pm
by cnavarro

Re: Color get en rojo si es negativo...

Posted: Fri Feb 21, 2014 10:37 pm
by ACC69
cnavarro wrote:O tambien:
[url]https://imageshack.com/‎[/url]


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

Saludos.

Re: Color get en rojo si es negativo...Anexo imagen

Posted: Sat Feb 22, 2014 1:45 am
by joseluisysturiz
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:

Re: Color get en rojo si es negativo...Anexo imagen

Posted: Sat Feb 22, 2014 12:24 pm
by cnavarro
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

Re: Color get en rojo si es negativo...Anexo imagen

Posted: Mon Feb 24, 2014 4:56 pm
by ACC69
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.