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 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Como limitar ingreso de l 1 al 10 en un edit

hola a todos
mi problema es el siguiente teng varios edit donde el usuario sol debe insertar los valores del 1 al 10 si insertar valores mas alto debe salir un mensaje informandole al usario.

como logro esto

gracias de antemano
Responder Con Cita
  #2  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
var valor: integer;
begin
   Valor:= 10;
   If Valor < StrToInt(Edit1.Text) then
   Showmessage('es mayor de 10');
end;
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Todos los edit apuntando al evento del edit1.
El bucle esta definido para tres edit, se tendra que colocar la cantidad que se necesite.
Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
var valor, i: integer;
        comp: TComponent;
begin
   for i := 1 to 3 do begin // la cantidad de edits que se tenga
   Valor:= 10;
   comp := FindComponent('Edit' + IntToStr(i));
   If Valor < StrToInt(TEdit(comp).Text) then
   Showmessage('es mayor de 10');
end;
end;
Saludos
__________________
Siempre Novato
Responder Con Cita
  #4  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola

Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
var valor: integer;
begin
Valor:= 10;
If Valor < StrToInt(Edit1.Text) then
Showmessage('es mayor de 10');
end;



Saludos
Ok gracias como lo logro para 15 edit con la misma condicion
Responder Con Cita
  #5  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
El evento ONChange de cada edit que apunte al evento onchage del edit1.
Tambien puedes hacer un procedure que todos apunten a este.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #6  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Te va a dar un error (NO ES UN VALOR INTEGER), esto si los edits estan en blanco y apuntan al mismo evento.
Solucion: Colocar en el text de cada edit un 0.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #7  
Antiguo 23-03-2011
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
¿no sería más sencillo utilizar un SpinEdit?

al menos no tendrías que escribir nada de código.
__________________

Responder Con Cita
  #8  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola
Te va a dar un error (NO ES UN VALOR INTEGER), esto si los edits estan en blanco y apuntan al mismo evento.
Solucion: Colocar en el text de cada edit un 0.
Saludos
Esto es un problema para mi porque cuando arranca el programa los edits debe estar vacios
Responder Con Cita
  #9  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Cita:
Empezado por ContraVeneno Ver Mensaje
¿no sería más sencillo utilizar un SpinEdit?

al menos no tendrías que escribir nada de código.
El ejecicio dise que debe ser edits normales
Responder Con Cita
  #10  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Y por que es un problema si todo tiene solucion?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #11  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola
Y por que es un problema si todo tiene solucion?.
Saludos
El profesor no quiere que los edits esten en blanco cuando inicie el programa
Responder Con Cita
  #12  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
No entiendo:
Tienen o NO tienen que estar en Blanco los edits?
Saludos
__________________
Siempre Novato
Responder Con Cita
  #13  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Debe de estar en blanco
Responder Con Cita
  #14  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Por eso digo: Cual es el problema, todo tiene solucion.
Espera, ya te digo.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #15  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
ok
te espero
Responder Con Cita
  #16  
Antiguo 23-03-2011
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bien: Cuando inicie el programa estaran en Blanco (vacios).
Pero en cuanto se trate de ingresar un dato se llenaran de ceros, los que no tengan ya un dato.
El problema es que lee TODOS los edits, entonces necesitan poseer un dato integer.
Es como se me ocurre.
Código Delphi [-]
procedure TForm1.Edit1Change(Sender: TObject);
var valor, i: integer;
        comp: TComponent;
begin
   for i := 1 to 3 do begin // la cantidad de edits que se tenga
   Valor:= 10;
   comp := FindComponent('Edit' + IntToStr(i));
   if TEdit(comp).Text = '' then
   begin
   TEdit(comp).Text := IntToStr(0);
   end;
   if TEdit(comp).Text <> '' then
   If Valor < StrToInt(TEdit(comp).Text) then
   Showmessage('es mayor de 10');
end;
end;
Saludos
DP: Dile a tu profesor que le esta pidiendo mucho a un novato.
__________________
Siempre Novato
Responder Con Cita
  #17  
Antiguo 23-03-2011
Avatar de chino150
chino150 chino150 is offline
Miembro
 
Registrado: dic 2007
Posts: 86
Poder: 17
chino150 Va por buen camino
Gracia Caral no tiene idea de lo abusadores que pueden ser los profesores en la Republica Dominicana
Responder Con Cita
  #18  
Antiguo 23-03-2011
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Cita:
Empezado por chino150 Ver Mensaje
El ejecicio dise que debe ser edits normales
a caray... no todo lo que te enseñen en la escuela va a ser verdad...

no puedes construir puentes resistentes con palillos de dientes... aunque el ejercicio diga que sí...

utiliza el código de mi amigo Caral, si así es tu ejercicio, pero definitivamente debes de mostrarles que utilizando SpinEdits no tendrían que romperse la cabeza.

P.D. No se porque me dieron ganas de darle un zape a tu maestro, por cerrar puertas en lugar de fomentar la creatividad... shale...
__________________

Responder Con Cita
  #19  
Antiguo 23-03-2011
Avatar de pnsd_89
pnsd_89 pnsd_89 is offline
Miembro
 
Registrado: mar 2007
Posts: 112
Poder: 18
pnsd_89 Va por buen camino
y si coloca el maxleng en 2 y en el Onkey hace que las teclas permitidas solo sean las numericas? seria lo mas rapido creo yo
Responder Con Cita
  #20  
Antiguo 23-03-2011
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Cita:
Empezado por pnsd_89 Ver Mensaje
y si coloca el maxleng en 2 y en el Onkey hace que las teclas permitidas solo sean las numericas? seria lo mas rapido creo yo
¿probaste el spinedit?
yo no veo otra cosa más rápida que utilizar el spinedit, establecer dos o tres propiedades y listo. Sin código, sin conversiones, sin validaciones....
__________________

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
Limitar el nº de caracteres en un Edit Javier_A OOP 4 04-04-2013 19:57:51
validar el ingreso a un Edit solo numeros jedinds OOP 25 24-09-2010 22:58:44
Como Ingreso Una Matriz?? sanzCrito OOP 2 16-10-2008 21:26:15
Validar Ingreso De Letras En Un Edit sdiaz1983 Varios 10 21-03-2008 01:16:33
Limitar ingreso a un solo numero arespremium OOP 16 26-09-2007 19:58:36


La franja horaria es GMT +2. Ahora son las 15:48:12.


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