Ver Mensaje Individual
  #6  
Antiguo 08-03-2008
Avatar de Zakio14
Zakio14 Zakio14 is offline
Miembro
 
Registrado: feb 2008
Ubicación: Costa Rica
Posts: 22
Reputación: 0
Zakio14 Va por buen camino
Pura Vida Foro!

Bueno Este codigo lo encontre y me funciona a la perfeccion!!!

Lo Pongo aqui por si alguien lo llega a necesitar...
Código Delphi [-]
 
//Esta funcion se crea en Public
 
function ExisteForm(Formulario : string) : boolean;

// Esta funcion ya definida en el Public
function TPrincipal.ExisteForm(Formulario : string) : boolean;
var
   ChildIndex : integer; 
begin
  ChildIndex := 0;
  result := false;
  while (ChildIndex < MDIChildCount) and (not result) do
    begin
      if MDIChildren[ChildIndex].Name = Formulario then
         result := true
      else 
          inc(ChildIndex);
    end;
  if result then
     MDIChildren[ChildIndex].BringToFront;
end;
 
 
// Esto se coloca en el llamado del formulario hijo MDI
 if not ExisteForm('FMatricBach') then  //Primero se llama esta función para asegurarnos de que no existe el formulario
     begin                                          // ExisteForm es la funcion creada aqui la llamamos
       FMatricBach := TFMatricBach.Create(Application);
       FMatricBach.show; //no uso showModal
     end;

//Esta función es llamada cada vez que se abre un Formulario desde Menú
//para asegurarnos de que no se encuentra ya abierto el mismo 
//Buscamos entre los formularios hijos abiertos, si no esta cargado se carga
//De lo contrario se trae al frente de los demás.
Hasta la proxima foristas...

Última edición por jachguate fecha: 11-03-2008 a las 04:51:26. Razón: ¡usad la etiqueta delphi!
Responder Con Cita