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 excepción
Buenas gente. Pequeño problemilla.
Tengo un edit, cuyo texto debo pasarlo a nro. decimal para guardarlo en una tabla. Para chequear que el usuario escriba un nro. decimal y no cualquier cosa, hice lo siguiente:
La cuestión es que no me lo toma, arroja error igual cuando no puede castearlo. Me pareció más fácil realizar esto que ponerme a chequear los caracteres que ingresa, que si son nros, que si es una coma, etc, etc. O capaz hay alguna solución mejor??? Toda ayuda es aceptable, ja. Uso delphi 7 Muchas gracias |
#2
|
||||
|
||||
Ahora mismo no lo encuentro (uso Lazarus), pero si no recuerdo mal TMaskEdit tienen la capacidad de seleccionar qué tipo de entrada se permiten. También puedes intentar con un TSpinEdit o un TFloatSpinEdit. No sé si estarán disponibles para Delphi 7, pero al menos el TSpinEdit sí estaba disponible para Delphi 6, si no recuerdo mal.
|
#3
|
||||
|
||||
Cita:
Si ejecutas la aplicación desde el IDE de Delphi y tienes activada la opción Debugger|Stop on Delphi Exceptions, de tods forms te saltará la excepción. Prueba desactivando la opción o ejecutando desde fuera del IDE. Por otro lado, siempre es mejor manejar la excepción que más se ajuste en lugar de una genérica:
De esta manera, si el código falla por otra razón, sabrás cuál es y no pensarás que fue un error de conversión. // Saludos |
#4
|
||||
|
||||
Hola.
Otra opción puede ser:
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
#5
|
||||
|
||||
franroju,
Puedes asignar este código al evento OnKeyPress del Control TEdit: El código anterior solo permitirá ingresar números en el Control TEdit, otra opción interesante es el Control TMaskEdit con la mascara de edición 0 para permitir solo números. Espero sea útil Nelson. Última edición por nlsgarcia fecha: 08-11-2012 a las 23:07:26. |
#6
|
|||
|
|||
Perdón por la demora. Román, lo que me dijiste vos lo descubrí en uno de los posts que aparecen abajo. Y lo de EConvertError, es verdad, lo tenía así. Pero cuando pasé el código había realizado 2348320974289347239 pruebas con tal de que me funcione, ja.
Eficsa, esa no la sabía, así que es un buen aporte. nlsgarcia, eso no me sirve ya que quiero evaluar nros decimales, y tu código no me permitiría ingresar comas. Gracias a todos |
#7
|
||||
|
||||
franroju,
El código se puede ampliar para aceptar cualquier carácter válido: Debes validar que la coma sea colocada en el lugar que requiere tu aplicación. Espero sea útil Nelson. Última edición por nlsgarcia fecha: 10-11-2012 a las 01:27:37. |
#8
|
||||
|
||||
franroju,
Esta es una variante que permite al Control TEdit ingresar números, validar que la coma no sea colocada en la posición 1 o más de una vez y usar la tecla de retroceso (#8): Espero sea útil Nelson. Última edición por nlsgarcia fecha: 10-11-2012 a las 02:28:02. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
problema con una excepcion | advancexz | Varios | 3 | 07-01-2009 22:15:52 |
excepcion con ado | raffagia | Conexión con bases de datos | 2 | 12-02-2008 02:23:31 |
Excepción en JSP | david.rguez | JAVA | 1 | 14-02-2007 22:21:02 |
excepcion | nenufer | Conexión con bases de datos | 6 | 16-05-2006 22:01:38 |
Problema con excepción en el ejecutable, ayuda por favor | AFilth | Varios | 6 | 31-10-2005 14:40:59 |
|