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 14-03-2010
bothy bothy is offline
Miembro
 
Registrado: ene 2010
Posts: 144
Poder: 15
bothy Va por buen camino
como puedo borrar 100 edit

como puedo borrar 100 edit

e puesto este codigo en un Button para limpiar


Código Delphi [-]
var i :integer;
begin
for i := 0 to ComponentCount -1 do
if Components[i] is TEdit then
begin
TEdit(Components[i]).Clear ;
     end;
end;


no me marca ningun error pero tampoco me limpia los edit..
Responder Con Cita
  #2  
Antiguo 14-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Prueba con FindComponent, algo así (lo he hecho de memoria, revísalo):
Suponiendo que los TEdit se llaman edit1, edit2, edit3, etc.

Código:
var
  i:integer;
  cEdit : String;
  UnEdit : TEdit;
begin
  for i:=1 to 100 do
  begin
    cEdit :='Edit'+IntToStr(i);
    UnEdit := Findcomponent(cEdit);
    if Assigned(UnEdit) then
      TEdit(UnEdit).Text := '';
  end;
end;
Responder Con Cita
  #3  
Antiguo 14-03-2010
bothy bothy is offline
Miembro
 
Registrado: ene 2010
Posts: 144
Poder: 15
bothy Va por buen camino
casimiro noce porque me da un erro en esta linea

Código Delphi [-]
  UnEdit := Findcomponent(cEdit);
Responder Con Cita
  #4  
Antiguo 14-03-2010
bothy bothy is offline
Miembro
 
Registrado: ene 2010
Posts: 144
Poder: 15
bothy Va por buen camino
El error se encontraba en la declaracion de la variable UnEdit : Tcomponent;


Código Delphi [-]
 var i:integer;
  cEdit : String;
  UnEdit :   Tcomponent;

begin
 for i:=1 to 6 do
  begin
    cEdit :='Edit'+IntToStr(i);
    UnEdit :=  Findcomponent(cEdit);

    if Assigned(UnEdit) then
      TEdit(UnEdit).Text  := '';
  end;
end;

gracias casimiro me acabas de ayudar con 100 edit1.clear
Responder Con Cita
  #5  
Antiguo 14-03-2010
BrunoBsso BrunoBsso is offline
Miembro
 
Registrado: nov 2009
Ubicación: Berisso, Buenos Aires, Argentina
Posts: 239
Poder: 15
BrunoBsso Va por buen camino
Código Delphi [-]
for I:=0 to ControlCount-1 do begin //o hasta el número que quieras
  if (Controls[i] is TEdit) then
    TEdit(Controls[i]).Text:='';
end;
Espero que te sirva.
Saludos!
Responder Con Cita
  #6  
Antiguo 14-03-2010
bothy bothy is offline
Miembro
 
Registrado: ene 2010
Posts: 144
Poder: 15
bothy Va por buen camino
gracias BrunoBsso es un poco menos de codigo..
tambien me funciono..
Responder Con Cita
  #7  
Antiguo 14-03-2010
bothy bothy is offline
Miembro
 
Registrado: ene 2010
Posts: 144
Poder: 15
bothy Va por buen camino
Otra Pregunta y como seria para limpiar label..?
Responder Con Cita
  #8  
Antiguo 14-03-2010
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Se usa esencialmente lo mismo, solo cambia el componente:
Código Delphi [-]
var
  i: Integer;
  comp: TComponent;
begin
   for i := 1 to 100 do begin // 100 label
   comp := FindComponent('Label' + IntToStr(i)); 
   TLabel(comp).Text:= ' ';
  end;
Saludos
__________________
Siempre Novato
Responder Con Cita
  #9  
Antiguo 15-03-2010
bothy bothy is offline
Miembro
 
Registrado: ene 2010
Posts: 144
Poder: 15
bothy Va por buen camino
Muchas gracias caral .....
Responder Con Cita
  #10  
Antiguo 14-07-2010
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.488
Poder: 20
MAXIUM Va camino a la fama
¿Y si los Edit están en otro Forma?

¿¿¿ Form3.Edit3.Text ???
Responder Con Cita
  #11  
Antiguo 14-07-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por MAXIUM Ver Mensaje
¿Y si los Edit están en otro Forma?

¿¿¿ Form3.Edit3.Text ???
Hola MAXIUM.

Código:
procedure TForm1.Button1Click(Sender: TObject);
var
  i : Integer;
begin
  with Form3 do
   for i:= 0 to ControlCount -1  do
     if Controls[i].ClassType = TEdit then
       TEdit(Controls[i]).Text:= '';
end;
Por supuesto debes incluir la Unit que declara a Form3.


Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 14-07-2010 a las 03:11:22.
Responder Con Cita
  #12  
Antiguo 14-07-2010
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.488
Poder: 20
MAXIUM Va camino a la fama
Hola, gracias, pero que pasa si tengo un Edit1.Text y un AlignEdit1.Text, el segundo descendiente del primero, osea también es un TEdit y quiero modificar solo los AlignEdit dejando intactos los primeros.

Funcionara?!?!
Código Delphi [-]
TEdit(Form4.FindComponent('AlignEdit'+IntToStr(Indice))).Text:= 'Hola'

Última edición por MAXIUM fecha: 14-07-2010 a las 03:27:42.
Responder Con Cita
  #13  
Antiguo 14-07-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola de nuevo MAXIUM.

Si usas la forma:
Código:
   if Controls[i] is TEdit then
     ...
No podés hacer la distinción ya que te dara verdadero tanto para la clase base como para sus descendientes.

Es por eso que usé:
Código:
  if Controls[i].ClassType = TEdit then
   ...
Para lo que deseas deberías usar:
Código:
  if Controls[i].ClassType = TAlignEdit then 
   ...
Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #14  
Antiguo 14-07-2010
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.488
Poder: 20
MAXIUM Va camino a la fama
Funcionara?!?!
Código Delphi [-]
TEdit(Form4.FindComponent('AlignEdit'+IntToStr(Indice))).Text:= 'Hola'
Responder Con Cita
  #15  
Antiguo 14-07-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Sin duda.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
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
Como puedo borrar una fila en un dbgrid Lucas_diaz1810 Conexión con bases de datos 1 14-09-2007 18:07:12
¿Como puedo hacer que aumente el valor de un edit? Nelly Varios 7 18-04-2007 05:33:27
demasiados edit para borrar huwabe78 Varios 12 30-11-2006 00:16:00
Como puedo borrar el contenido de una tabla entera CoCaInE Conexión con bases de datos 5 06-06-2006 03:49:00
no puedo borrar registros Patricio Conexión con bases de datos 2 16-02-2005 14:39:05


La franja horaria es GMT +2. Ahora son las 08:23:15.


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