Ver Mensaje Individual
  #5  
Antiguo 26-01-2010
Avatar de jcarteagaf
[jcarteagaf] jcarteagaf is offline
Miembro Premium
 
Registrado: abr 2006
Ubicación: La Paz, Bolivia
Posts: 651
Reputación: 19
jcarteagaf Va por buen camino
Tengo una funcion que me hace precisamente eso

Código Delphi [-]
procedure ShowFormMDI(TfrmClass: TFormClass;bMultiInstace : boolean);
var
  i : SmallInt;
  F : TForm;
begin
  if not bMultiInstace then
    for i := Application.MainForm.MDIChildCount - 1 downto 0 do
    begin
      F := Application.MainForm.MDIChildren[i];
      if F.ClassType = TfrmClass then
      begin
        if F.WindowState = wsMinimized then
           F.WindowState := wsNormal;
        F.BringToFront;
        Exit;
      end;
    end;
  with TfrmClass.Create(Application) do
    Show;
end;

y lo llamo de la siguiente forma

Código Delphi [-]
ShowFormMDI(TFormaHija,false);

El segundo parametro te indica si se permite o no que se llame mas de una vez al formulario. Si no lo permites y el formulario esta abierto lo activara.

Espero te sirva

Saludos.
Responder Con Cita