FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Problema con un MaskEdit
Hola a todos
Tengo un problema con un MaskEdit, se trata que al quitarle el foco quiero verificar que este no tenga valores vacios, puesto que en ese evento paso su contenido a unas variables, por lo tanto(creo), al estar vacias me arrojan el error Invalid input value. He tratado de comprobar los valores con un If MaskEdit1.Text[posicion]= '' Then .... pero no me resulta. Agradecido de alguna ayuda, saludos |
#2
|
|||
|
|||
Si es un MaskEdit puedes ponerle una mascara para que no te permita espacios.
De todas formas puedes capturar el evento OnExit, y ahi asignas el valor a un string, que te permite hacer lo que comentas. Saludos. |
#3
|
|||
|
|||
Gracias, pero los espacios (' ') no son el problema, son los vacios (al borrar) y precisamente al pasar el contenido a la variable string con el vacio es donde se produce el error.
|
#4
|
|||
|
|||
He tratado interceptar el error con esto...
procedure TForm1.MaskEdit1Exit(Sender: TObject); var cadena:string[11]; begin try cadena:=MaskEdit1.Text; except showmessage('ingrese todos los valores a la casilla'); end; end; Pero no funciona |
#5
|
||||
|
||||
Relamente es muy poco clara tu duda. La componente MaskEdit sirve precisamente para que un valor se ajuste a un formato dado. Si el valor que introduce el usuario no tiene el formato correcto entonces se origina una excepción y es precisamente el comportamiento normal: evitar la introducción de valores incorrectos. Si por alguna razón el control del MaskEdit no te sirve, por ejemplo porque el formato sea más complejo que una simple máscara, entonces olvídate de la componente, usa un TEdit normal y controla el formato en su evento OnExit.
Ahora bien, si lo que quieres es poder presentar un mensaje en español en lugar del mensaje en inglés te comento que no puedes usar try-except en el evento OnExit ya que la validación de la máscara se hace antes de que se genere el evento. En tal caso te recomiendo leer este mensaje en donde explico cómo hacerlo. // Saludos |
#6
|
|||
|
|||
Lo explico de otra forma, cuando ingreso un valor a la mascara y luego borro algun caracter, al quitarle el foco (evento onexit) se produce el error invalid input value.
|
Herramientas | Buscar en Tema |
Desplegado | |
|
|
|