Ver Mensaje Individual
  #2  
Antiguo 19-06-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 31
Lepe Va por buen camino
En principio, puedes usar un EventAlert por cada Form que quiera recibir mensajes. Así cada ventana registra sus propios mensajes y al cerrar la ventana, elimina la notificación.

Otra forma es usando herencia, por ejemplo. Defines una ventana maestra que tenga el procedimiento actualiza, después todas las ventanas sobreescriben ese método y hace su tarea.

Código Delphi [-]
TBase = Class(TForm)

public
  procedure Actualiza (const msg:String);virtual;
end;

TForm1 = Class(TBase)

public
  procedure Actualiza (const msg:String);override;
end;



TForm2 = Class(TBase)

public
  procedure Actualiza (const msg:String);override;
end;
 
....
Ahora si puedes hacer esto:
for i := 0 to Screen.FormCount-1 do
begin
  if Pos('Papeleta',Screen.Forms[i].Caption)>0 then
  begin
    TBase(Screen.Forms[i]).Actualiza('yo yo yo');
  end;
end

Saludo
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita