PDA

Ver la Versión Completa : Solo Cuatro Digitos


osmar
07-02-2006, 14:52:29
Hola Amigos...

Necito nuevamente de sus ayudas..., en este caso lo que necesito es que el usuario solo pueda ingresar hasta cuatro digito en un dbgrid y dbedit relacionado a un campo de tipo integer con editforma #,##0.., o sea que solo se pueda introducir de 0 hasta 9999, sin que salga ningun tipo de error de Dephi..

Gracias de antemano...

Osmar Rolón

AFilth
07-02-2006, 15:29:50
Supongo q en el OnKeyPress tendrás puesto q sólo pueda introducir números si es lo que quieres (si no lo tienes hecho lo único q tienes q hacer es q si la tecla es distinta de '0'..'9' la ignore. Ahora sólo te quedaría ponerle en maxLength o la propiedad q tenga el Edit 4. Con eso ya lo tendrías resuelto.

Un saludo.

osmar
07-02-2006, 15:57:46
Eso mismo hice pero , me sale un mensaje de Delphi.. que dice que esta fuera del rango permitodo.. entre 0 y 9999, pero esta en ingles.. no quiero que me salga ese mansaje de error.. o la Manera de traducirlo yo antes que salga el mensaje por defecto de Delphi..

Gracias Por Responder

Espero me puedan ayudar

Saludos Osmar Rolón..

gluglu
07-02-2006, 18:27:30
Ese mensaje de rango entre 0 y 9999 sólo sale si lo que le has puesto es 9999 en MaxValue.

Lo que te indicaba AFilth es que utilices la propiedad MaxLength del DBEdit, poniendo 4. Si has definido dicho campo de edición como numérico, además de no permitirte introducir caracteres que no sean cifras, después de introducir como máximo 4 cifras, no te debe de seguir aceptando las pulsaciones del teclado sin emitir ningún mensaje de error.

Saludos

osmar
07-02-2006, 18:46:33
Gracias gluglu por hacerme entender, diculpa AFilth por no interpretar tu respuesta que en realidad esta bastante claro...

Gracias amigos..lastimosamente solo podrè probar a la noche, mañana le cuento quetal me fue..

En verdad muchas gracias.!!!

osmar
08-02-2006, 12:50:48
Estuve probando anoche lo que me dijeron y funciona perfectamente en el MaxLength del DBEdit, lastimosamente tengo un nuevo problema lo mismo quiero hacer un una columna de dbgrid que es tipo numérico también, ya probé con fijándome en el Tfield de ese campo dándole doble click a query, pero no encuentro ninguna propiedad parecida al MaxLength del DBEdit, ojalá me puedan seguir ayudando...


Gracias de Antemano..

Saludos Osmar Rolòn..

osmar
08-02-2006, 19:56:41
Hola Amigos..!!!

Que buscado por muchos lados y tovia no encuentro para mi solución.. espero alguien me pueda ayudar..

Gracias Amigos..

Saludos Osmar

vtdeleon
08-02-2006, 20:06:20
Saludos

Chequea la propiedad MaxValue del campo

osmar
08-02-2006, 20:12:07
Ya he probado de esa manera pero me sale un mensaje de error de delphi que esta en ingles, lo seria genial si puedo Formaterar yo ese mensaje, o directamente no permitir al usuario ingresar el quinto digito, que es mas interesante.creo!!..

Gracias por la Ayudas.. espero solucionar realmente mi proble..

Saludos Osmar..Rolón.

vtdeleon
08-02-2006, 20:45:42
Saludos

Algo chapusero que he hecho es esto con el componente Application y usando su evento OnException, teniendo la propiedad MaxValue con el rango requerido. if pos('allowed range',E.Message)>0 then
ShowMessage('tu mensaje en espanol')
else
MessageDlg(E.Message, mtError, [mbOK], 0);
No se me ocurre mas nada:(:(

osmar
08-02-2006, 21:17:38
Hola vtdeleon

Disculpame no entendi bien en donde debo poner ese codigo.., en el OnException de que Objeto?..

Gracias por contestar vtdeleon

Saludos Osmar Rolòn..

vtdeleon
08-02-2006, 21:21:36
Saludos

Oops puse mal el nombre del componente, éste se llama ApplicationEvents* en el evento OnException.

*En la paleta Additional.;)

osmar
08-02-2006, 21:44:28
Gracias vtdeleon!!!, esta noche lo probaré, y mañana te cuento quetal me fue...

Gracias Vtdeleon por contestar..!!

Saludos Osmar Rolón

osmar
09-02-2006, 12:50:57
Hola Amigos!!!

vtdeleon, estruve probando con el ApplicationEvents y funciona perfectamente, gracias por solucionar mi problema, en realidad mil gracias..!!!


Gracias tambien a todos por contestarme..

Saludos. Desde Paraguay

Osmar Rolón