Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Cómo validar un SpinEdit? (https://www.clubdelphi.com/foros/showthread.php?t=55909)

mrnovice 30-04-2008 21:08:53

Cómo validar un SpinEdit?
 
Saludos,Muy buen día, alguien sabe como validar un SpinEdit,cuando el usuario le tecleé borrar< <---- > o <supr> o quede vacio el campo no salga error.
Muchas gracias por su comprensión.

BlueSteel 30-04-2008 21:29:05

Cita:

Empezado por mrnovice (Mensaje 283558)
Saludos,Muy buen día, alguien sabe como validar un SpinEdit,cuando el usuario le tecleé borrar< <---- > o <supr> o quede vacio el campo no salga error.
Muchas gracias por su comprensión.


Hola...

Que componente es el SpinEdit... y para que sirve ??

Bueno, busca si el componente tiene algun evento de tipo onKeyPress, por ejemplo puedes poner un codigo similar al sgte

Código Delphi [-]
If Key='.' Then Key:=','
Salu2:p:D

ContraVeneno 01-05-2008 00:07:28

vamos, si lo bonito de usar el spinedit es que no tendrías que preocuparte por validar nada.

Solo es cuestión de que configures de manera adecuada sus propiedades.

¿exactamente que spinedit estás utilizando? ¿el de las Jedi, el de las RX, el de las ESBC, cuál exactamente?

ContraVeneno 01-05-2008 01:07:04

Cita:

Empezado por BlueSteel (Mensaje 283560)
Que componente es el SpinEdit... y para que sirve ??

El SpinEdit es como un Control UpDown, pero ya viene integrado el Edit con el UpDown.

Es decir, sirve para incrementar o decrementar un valor, generalmente de tipo entero.

Supongo que se llama "Spin" porque al llegar al valor máximo, si le das click al botón de aumentar, te regresa al valor mínimo. Si llegas al mínimo y le das click al botón de decrementar, te lleva al máximo. En otras palabras, haces un cículo entre el valor máximo y el mínimo.

Este componente, al menos el TjvSpinEdit, tiene las propiedades "CheckMaxValue", "CheckMinValue" para indicarle si valida o no estos valores, los cuales se definen en sus propiedades "MinValue", "MaxValue". Además, cuanta con la propiedad "ValueType" el cuál, permite manejar enteros, flotantes y hexadecimales.

Así que como comentaba, solo hace falta configurar sus propiedades y no te preocupas por validar nada.

mrnovice 01-05-2008 03:18:49

SpinEdit
 
Saludos,estoy utilizando el que viene de fabrica(Delphi 7 Enterprise) en la pestaña samples, es que tengo entendido que si solo acepta números enteros pero al dejarlo en blanco le ocasiona un error supongo por lo mismo un ' ' es un caracter y no un entero.
Saludos.

ContraVeneno 02-05-2008 16:00:39

Pues será cuestión de revisar las propiedades MaxValue y MinValue.

mrnovice 06-05-2008 17:01:46

No me funciona :(
 
Ya lo he intentado, tal vez hay algo que no sepa, o a lo mejor no me expliqué, osea ponemos un SpinEdit1, y un Edit1 ahora corremos el Formulario, borremos el contenido del SpinEdit1 y nos pasamos al Edit1, debe salirte un Error EConvertError, intente el manejo de las excepciones pero no me dejaba usar apropiadamente el SpinEdit mmm no me dejaba cambiar el valor, alguna sugerencia?

ContraVeneno 06-05-2008 17:33:40

Pues mas bien hay otra cosa que no esta bien.

Yo coloco un spinEdit (de la pestaña samples) en mi formulario con MaxValue = 20 y MinValue = 0; lo ejecuto, borro el contenido y me cambio a cualquier otro lado, me sale la excepcion:

First chance exception at $7C812A5B. Exception class EConvertError with message ''' is not a valid integer value'. Process Project2.exe (2224)


¿porque a ti no te sale? pues no se

mrnovice 06-05-2008 18:56:50

De hecho me sale muy parecido
 
solo sin direcciones de memoria '$' en hexacedimal, osea quisiera como pudiera evitar ese error :(, si no es mucha molestia,jojojo, por cierto muchas gracias por el apoyo.

mrnovice 06-05-2008 20:16:56

Semisolucionado
 
Es usando la propiedad Text T-T desconocía esa propiedad, sòlo faltaria saber cuàl es el evento equivale before change jeje o la tecla para el evento en key press para el supr y para el del<<--------->

mrnovice 06-05-2008 21:55:15

Solucionado
 
Tema cerrado


La franja horaria es GMT +2. Ahora son las 18:51:48.

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