FoxPro/Visual FoxPro - Ayuda con text

   
Vista:

Ayuda con text

Publicado por Oscar Meza (78 intervenciones) el 02/01/2008 21:59:25
Buenas tardes y Feliz Año a todos

Amigos necesito ayuda de ustedes una vez mas mi problema es el siguiente tengo un text
el cual tiene un limIte (Maxlength) de 20, cuando el usuario llega al final este pierde el enfoque

Como podria evitar que esto suceda?,

Como podria lograr q mientras el usuario esta escibiendo y ha completado el maximo de la logitud sea el ultimo caracter el que este cambiando?

agradecere mucho su ayuda

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con text

Publicado por Plinio (7771 intervenciones) el 03/01/2008 03:50:30
Ver en la ayuda SET CONFIRM
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con text

Publicado por Esteban Andrade (11 intervenciones) el 03/01/2008 04:56:48
Querido colega, feliz año para ti también.

Para evitar que un objeto Text pierda su enfoque al llegar al final de él, debes de declarar el SET CONFIRM como ON, lo cual indica que se debe de confirmar lo que se ha escrito antes de abandonar el objeto text.

Ahora, si la pregunta más bien es de cómo evitar que el último carácter en el objeto text, se cambie al sobrepasar el MaxLenght, bueno lo que se me ocurre en este momento es que por medio del método KeyPress, valídes el tamaño del contenido del objeto Text.

Por ejemplo, si el objeto se llamara Text1, dentro del método KeyPress [ YO ] pondría lo siguiente...

LPARAMETERS nKeyCode, nShiftAltCtrl

IF LEN(ALLTRIM(thisform.text1.Value)) >= thisform.text1.MaxLength
thisform.text1.SelStart = thisform.text1.MaxLength + 1
KEYBOARD '' CLEAR
ENDIF

De esta manera se evita el sustituir el último carácter. Por favor escríbeme para comprobar que mi respuesta te ayudó.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con text

Publicado por enrique (1041 intervenciones) el 03/01/2008 14:25:15
proba poniendo este codigo en el keypress del cuadro de texto

if len(allt(this.value)) = this.MaxLength
this.selstart = this.Maxlength + 1
endif
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Gracias por la Ayuda

Publicado por Oscar Meza (78 intervenciones) el 03/01/2008 14:31:23
Buenos Dias

Estimados colegas agradesco su ayuda en este problema, he encontrado una solucion

1- en el valid del text escibo el siguiente codigo
IF !LASTKEY()=9
RETURN 0
ENDIF
esto evita q el text pierda el enfoque al completarse el Maxlength

2-El segundo problema no lo he resuelto y se los explico mas claro

El usuario final de mi aplicacion quiere q cuando presione la tecla FIN
el cusor se posicione despues del ultimo caracter y no antes de este
Seria esto posible?, como podria hacerlo si el Maxlength es de 6 y el contenido
del text es 123456?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Gracias por la Ayuda

Publicado por conciencia (1 intervención) el 03/01/2008 14:47:50
Amigo dile a tu usuario que no joda...

Ya con lo que has conseguido es mas que suficiente..........
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar