Ver Mensaje Individual
  #4  
Antiguo 05-09-2006
[David] David is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Málaga
Posts: 417
Reputación: 22
David Va por buen camino
Pongo la función lanzar , que esta en el formulario , del cual derivan los MDI.

Asi pues TFormDatos viene de TFormPadre ,

type
TFrmGCobrosPagos = class(TFrmMaestros)

Código Delphi [-]
class Function TFormPadre.Lanzar : TFormPadre;
var
 i : integer;
 f: TForm;
begin
    For i := Screen.FormCount -1 downto 0 do
    begin
        F := Screen.Forms[i];
        if F.ClassType = self then
            begin
                if F.WindowState <> wsMAximized then
                    F.WindowState := wsMaximized;
                    Result := TFormPadre(F);
                    Exit;
            end
            else  if F.FormStyle = fsMDIChild then
                F.Close;

    end;

    Result := self.Create(Application);
end;

El resto del código ya lo he puesto . El formulario se crea sin problemas , eso no tiene ningún error .

Cuando pongo

TFormDatos.Lanzar;

Se crea el MDIChild y no hay ningún error , así se crean todos los formularios y no da error .

El Error esta cuando pongo el código que he puesto antes , el siguiente

Código Delphi [-]
with formDatos do
begin
  PageControl.ActivePage := TabSheet1;
  .......................
end;
Responder Con Cita