2010-07-07 49 views
4

我想要將某個組件對齊到面板上的Align = alLeft,佔據面板的整個左側。然後還有另一個組件設置爲Align = AlTop,但沒有優先於左側對齊的組件,因此它只佔用面板頂部,左側對齊的組件沒有佔用面板頂部。 (如果那有意義的話)。問題是,我在面板上進行了很多自定義繪圖,所以我無法在原來的面板上添加額外的面板來分割面板,並像我通常那樣完成對齊。所以我想改變Align如何爲這個特定的面板工作。這是否可能?我用Delphi 7 事情是這樣的:如何設置「左對齊」優於Delphi 7中的「對齊頂部」?

alt text http://www.freeimagehosting.net/uploads/2ede3a0023.jpg

+1

你可以做一個你正在繪製哪個面板的圖表嗎?你應該可以用嵌套面板來實現這一點,你可能只需要把你正在繪製的面板放到另一個面板中即可。 – Nat 2010-07-08 12:04:13

回答

2

看看alCustom。我沒有看到它現在使用得太多,但here的Demo2可能是您需要的。

+0

謝謝Ulrich。這正是我正在尋找的。我從來不知道如何使用alCustom,這個例子告訴我如何。 – 2010-07-10 15:22:36

4

那麼,如果你不能是alTop面板下方有alClient添加一個額外的面板,

那麼我的替代方法是使用錨,只需將面板放置在所需的位置,然後將akBottom添加到左側面板,並將akRight添加到頂部面板。

最後一個選項是自己調整窗體/父容器的OnResize事件中的面板大小。