Delphi:如何使用align = alTop以编程方式调整组件的可视排序

Rod*_*ddy 12 delphi alignment tpanel

我有一个带有多个面板的表单,每个面板都有Align = alTop,因此它们从表单的顶部很好地堆叠.

但是,我想动态更改这些面板的外观顺序 - 即上下移动它们.这样做的最佳方法是什么?

Uwe*_*abe 30

通过将Top属性设置为0,可以轻松地将顶部对齐的面板移动到顶部.以反向请求的顺序(首先是底部面板)执行此操作,您就完成了.


Rob*_*edy 6

移动它们的方式与在设计时使用鼠标移动它们的方式相同:将当前面板的Top属性设置为小于Top要在当前面板下方的面板属性的属性.VCL将负责其余的工作.

如果你必须移动几个面板,请从开始BeginDeferWindowPos.将所有面板调整到您想要的任何坐标DeferWindowPos,然后立即将它们全部移动EndDeferWindowPos.