FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour FASTEDIT en BROWSES
Posts: 17
Joined: Mon Feb 24, 2020 10:34 AM
FASTEDIT en BROWSES
Posted: Fri Jan 22, 2021 08:18 PM

Hola amigos/as.
Tengo un browse con FASTEDIT, pero me parece que solo entra de forma automática al poner un numéro o caracter, pero necesito que también entre al campo poniendo el signo + y el -, por ejemplo se puede poner 3, pero NO se puede poner -3.
También necesito que se pueda empezar con el punto, por ejemplo ".ABC"
Si quito lo de FASTEDIT me obliga a pulsar INTRO para entrar a la celda para escribir.

En XHARBOUR no existe lo de FASTEDIT y funciona como un carácter más.

Seguramente este equivocado y sea muy sencillo, pero no doy con ello.

Os estaría muy agradecido si me resolvéis el problema.

Un saludo y a cuidarse

Posts: 17
Joined: Mon Feb 24, 2020 10:34 AM
Re: FASTEDIT en BROWSES
Posted: Sat Jan 23, 2021 05:34 PM
Me respondo

De momento y hasta que encuentre otro método lo he resuelto de la siguiente forma.

1.- He copiado xbrowse.prg a mi proyecto.
2.- El xbrowse copiado lo he modificado en la línea 3256 donde dice:
Code (fw): Select all Collapse
         elseif ( ::lFastEdit .or. nKey == Asc( '=' ) ) .and. ;
            ( ::nMarqueeStyle <= MARQSTYLE_HIGHLROWRC .or. ::bClrRowFocus != nil ) .and. ;
            oCol:lEditable .and. oCol:IsEditKey( nKey ) //cKey )     <--- línea a cambiar

            oCol:Edit( nKey )

por

Code (fw): Select all Collapse
         elseif ( ::lFastEdit .or. nKey == Asc( '=' ) ) .and. ;
            ( ::nMarqueeStyle <= MARQSTYLE_HIGHLROWRC .or. ::bClrRowFocus != nil ) .and. ;
            oCol:lEditable  //cKey )

            oCol:Edit( nKey )


De esta forma admite TODO lo cual quizás sea otro problema, pero se puede sustituir oCol:IsEditKey( nKey ) por una función propia donde sea yo quien decida que caracteres se admiten.

No se hacerlo de otra forma, si alguien sabe algo mejor, por favor incidarlo.

Muchas gracias por todo

Continue the discussion