Ver Mensaje Individual
  #5  
Antiguo 27-11-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.437
Reputación: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por dec Ver Mensaje
...sólo valdrá para ese tipo de formularios, ¿no?
No tiene porqué. Se supone que el parámetro será genérico.
Si debe acceder a los controles de un formulario lo lógico es pasar ese formulario como parámetro (no se me ocurre otra forma).
Algo así vamos:

Código Delphi [-]
procedure LimpiarDatos(AForm:TForm);
var
  i:Integer;
  edt: TEdit;
begin
  // recorrer los componentes
  for i := 0 to (AForm.ComponentCount - 1) do begin
    // Es un TEdit
    if (AForm.Components[i] is TEdit) then begin
      // Limpiar el edit
      edt := TEdit(AForm.Components[i]);
      edt.Clear;
     //      edt. ....  //otras propiedades
    end;
  end;

Si hubiera que hacerlo con más tipos de controles, también se podría utilizar RTTI.

De esta forma puedes llamarla como:

Código Delphi [-]
  LimpiarDatos(AForm:TForm);
  LimpiarDatos(formX);
  ...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita