请问如何处理在创建MDI子窗体时,能按自定义的窗体大小显示.
比如说,在处理非MDI子窗体时,可以在设计时将此窗体的Visible设为false.
Create后,更改其窗体位置及大小后再SHOW.
而MDI子窗体在Create后,自动SHOW了,如果我再更改其窗体位置或大小.则窗体会出现闪烁.
我不想inherited Create一般子窗体,再更改其Parent属性,也不想在子窗体的OnShow或OnCreate中去改变.
请问还有别的方法吗?请指教!

解决方案 »

  1.   

    怎么会自动show,不可能吧。不过你可以这样试试
      lockwindowupdate(Handle);
      form3:=Tform3.Create(application);
      form3.show;
      lockwindowupdate(0);
      

  2.   

    to dyf2001:
       请你试过以后再发言,好吗?我说的是MDI子窗体!如果是一般的窗体,只需先将Visible设为false,然后再SHOW就可以了.并不需要用什么LockWindowUpdate!!
      

  3.   

    Try to override the constructor, then set the position in it. E.g.type
      TForm1 = class(TForm)
      public
        constructor Create(AOwner: TComponent); override;
      end;implementconstructor TForm1.Create(AOwner: TComponent);
    begin
      inherited;
      Left := WhereDoYouWantToPutLeft;
      Top := WhereDoYouWantToPutTop;
    end;