我使用主窗體和子窗體。窗體主窗體+子窗體堆棧問題
如果我打開第二個孩子形式
TMYForm.Create(無);
它不堆疊在第一個子窗體上。
第二個和第X個子窗體是否有任何方式出現在與第一個子窗體完全相同的位置?
或者我需要銷燬舊的子窗體,同時創建新的窗體(因爲堆疊是自動完成的)?
我使用主窗體和子窗體。窗體主窗體+子窗體堆棧問題
如果我打開第二個孩子形式
TMYForm.Create(無);
它不堆疊在第一個子窗體上。
第二個和第X個子窗體是否有任何方式出現在與第一個子窗體完全相同的位置?
或者我需要銷燬舊的子窗體,同時創建新的窗體(因爲堆疊是自動完成的)?
這是預期的行爲。如果沒有另行指定,表格將從之前打開的位置向右和向下打開。
如果你想控制你的表格的位置,其Position
屬性更改爲poDesigned
,但你要設置其Top
和Left
屬性,以確保這將是可見的。
或者您可以使用一些預設:poDesktopCenter, poMainFormCenter, poOwnerFormCenter
或poScreenCenter
。
嘗試把此:
TMYForm.Position:= poMainFormCenter;
或
TMYForm.Position:= poOwnerFormCenter;
Before TMYForm.Create(nil);
-S
如果您有子窗體參考,使用Form2.BoundsRect:= Form1.BoundsRect
附:我試圖在使用nil之前破壞子表單,但仍將它堆疊在不同的位置,儘管第一個子表單不再可見。 – Tom 2009-08-28 17:04:26
這是一種模態還是非模態形式?對於模態,您需要確保z順序也是正確的。 – 2009-08-28 17:15:40