Ver Mensaje Individual
  #11  
Antiguo 05-01-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 29
Lepe Va por buen camino
Dentro de un tiempo, no tanto como crees, sonreirás al ver este mensaje . Te invito a que intentes deducir qué hace el código metiendo ShowMessages, cambiando líneas de código, etc, ya que es la única forma de aprender.

Código Delphi [-]
function ShowMDIChildForm(AFormClass: TFormClass):TForm;
var
  I: Integer;
begin
  for I := 0 to Pred(Application.MainForm.MDIChildCount) do
  begin
    Result := Application.MainForm.MDIChildren[i];
    if Result is AFormClass then
    begin
      if IsIconic(Result.Handle) then
        ShowWindow(Result.Handle, SW_RESTORE);
      Result.BringToFront;
      Exit
    end
  end;
  Result := AFormClass.Create(nil) // ejem, yo en lugar de "nil" pondría "Application"
// es más seguro si tienes varias ventanas hijas abiertas y le das a cerrar
// la ventana principal.
end;

Ahora puedes llamar a esa rutina así:

Código Delphi [-]
procedure Mio;
var F: TFrmClientes;
begin
  F=:  TFrmClientes(ShowMDIChildForm(TFrmClientes));
  F.LoqueSea

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

Última edición por Lepe fecha: 05-01-2008 a las 02:28:13.
Responder Con Cita