Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-10-2007
Patho Patho is offline
Registrado
 
Registrado: oct 2007
Posts: 6
Poder: 0
Patho Va por buen camino
EditMask pequeño problema

Hola Muchachos, hoy me he dado cuenta de un pequeño problemita con un editmask que hasta ahora no lo he podiudo solucionar, creo que es simple la solución pero no la he visto

el edit tiene el siguiente formato 00.000.000\-A;1;_ es para el ingreso del rut de chile numeros (0..9) y 1 letra (k) solo si corresponde, el asunto es que si el texto del edit me queda una lines ___ de estas y salgo del edit me me lansa un error, deben estar completos todos los datos asi 00.000.000-0 aunque sean ceros, pero si un usuario lo deja incompleto _0.000.000-0 me sale el error, me dice que es un valor invalido de entrada, y mi pregunta es como puedo manejar esa entrada?? para que no permita si el usuario borra un numero no quede el underline??

otra cosa le tengo por defecto qeu sean todos 0 ningun underline se ve hasta que el usuario borra el numero, de antemano muchas gracias a sus sugerencias


salu2


chao
Responder Con Cita
  #2  
Antiguo 26-10-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
a mi no me gusta mucho el Mask edit, por lo que te aconsejo crear tu propio componente heradado del TEdit que implemente lo que requieres.

Suerte
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 27-10-2007
Delfino Delfino is offline
Miembro
 
Registrado: jul 2003
Ubicación: Madrid
Posts: 974
Poder: 21
Delfino Va por buen camino
Cita:
te aconsejo crear tu propio componente heradado del TEdit que implemente lo que requieres.
Para q? si la propiedad puede hacer lo mismo.
sustituye los ceros por nueves a ver si te deja..
__________________
¿Microsoft? No, gracias..
Responder Con Cita
  #4  
Antiguo 27-10-2007
Patho Patho is offline
Registrado
 
Registrado: oct 2007
Posts: 6
Poder: 0
Patho Va por buen camino
hola, el unico inconveniente que tengo al crear el componente es que nunca he hecho uno, seria posible de que me explicaras como poder crearlo???


muchas gracias por tu pronta respuesta





Cita:
Empezado por poliburro Ver Mensaje
a mi no me gusta mucho el Mask edit, por lo que te aconsejo crear tu propio componente heradado del TEdit que implemente lo que requieres.

Suerte
Responder Con Cita
  #5  
Antiguo 27-10-2007
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 23
BlueSteel Va por buen camino
Hola Patho...

mira.. yo trabajo con el campo MaskEdit.. y le pongo esto 00.000.000-C;1;_

hasta el momento me ha funcionado bien...aunque si no ingreso todos los datos.. me da error... obvio...

trate de usar esto.. pero como que no me funco...

Código Delphi [-]
 
   If Key = #13 Then
      AnsiReplaceStr(vRut.Text,'_','0');

que hace.. al presionar el Enter... me debe reemplazar el _ por Ceros (0)... pero

te recomiendo que uses un Edit... y que los caracteres los rellenes con ceros a la izquierda.. y le des formato una vez dado el enter... pero que no se ingrese el digito verificador...

mira el sgte funcion PadString
lo que hace es rellenar un String con cierto caracter para que cumpla el largo

Ejem... un Edit1 para el rut, de largo 8.. sin punto y sin el digito verificador

se ingresa el rut 40 (cuyo digito verificador es K)

al presionar Enter, le pones este codigo

Código Delphi [-]
 
If Key =#13 Then
   Edit1.Text := PadString(Edit1.Text,'0',8,toLeft); // puede ser toRight

que hacer.. tomará el Edit 40 y lo transformara en 00000040, despues deberás aplicarle una rutina para calcular el digito verificador.. y lo pasas con el formato que desees...

espero que te sirva...
__________________
BlueSteel
Responder Con Cita
  #6  
Antiguo 29-10-2007
Patho Patho is offline
Registrado
 
Registrado: oct 2007
Posts: 6
Poder: 0
Patho Va por buen camino
gracias BlueSteel he seguido tu consejo y me ha resultado impecable funciona de maravillas.


saludos


Patho
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Fallo en editmask con minutos.. nugame Varios 6 02-02-2007 12:09:33
Negativos en un editmask lbidi Varios 4 31-08-2005 21:55:22
Pequeño problema con el componente tmemo gaska OOP 5 23-04-2004 12:52:36
EditMask chele Varios 2 18-03-2004 16:08:46


La franja horaria es GMT +2. Ahora son las 13:38:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi