2017-03-04 44 views
0

我有項目從XE7,在子窗體的OnCreate我改變窗口的大小,這種形式有位置:= MainFormCenter。正確的方式來改變之前顯示的尺寸

現在柏林我顯示這個孩子形式後,左= 0和頂= 0。如果窗口大小在OnCreate中未更改,則此正確創建的子窗體將以主窗體爲中心。

如何在初始化期間使用Delphi柏林改變表單大小,而不是丟失表單位置設置?這裏改爲TFormPosition.Designed

形式位置:

unit FMX.Forms 

procedure TCommonCustomForm.Show; 
var 
    LPosition: TFormPosition; 
... 
begin 
... 
      // If you changed the original coordinates or size 
      if TBoundChange.Location in FBoundChanges then 
      begin 
      if LPosition = TFormPosition.Default then 
       LPosition := TFormPosition.DefaultSizeOnly 
      else if LPosition in [TFormPosition.DefaultPosOnly, TFormPosition.ScreenCenter, TFormPosition.DesktopCenter, 
       TFormPosition.MainFormCenter, TFormPosition.OwnerFormCenter] then 
       LPosition := TFormPosition.Designed; // Changed here to Default 
      end; 
... 
end; 

更新:我發現

的一種方式 - 從形式的OnShow中方法

回答

0

沒有其他的答案改變大小 - 解決此問題的一種方法是在OnShow方法中更改表單大小,格式爲

相關問題