在TAlignLayout 的文档中,一种解决 FireMonkey 控件视觉对齐设置的类型,我试图找出alTop
和alMostTop
常量之间的区别,唯一的区别是定义alMostTop
包含短语“设置为最顶层”。
(常数alMostLeft
,alMostRight
和 也是如此alMostBottom
,它们与alLeft
,alRight
和alBottom
使用“最左”、“最右”和“最下”等词的类似短语区别开来。)
我不知道“设置为最高”是什么意思,而且我所做的猜测似乎都不符合观察到的 FireMonkey 行为:
如果这意味着相对于其兄弟在顶部(在显示器的前面)显示该控件,那么最左边是什么意思?
如果“最左”意味着它是显示在最左边的兄弟,在所有具有
alLeft
对齐的兄弟中,那么为什么 CustomListBox 演示使用具有两个alMostLeft
对齐元素的布局?它如何决定以特定方式放置这两个元素?
Embarcadero 论坛也没有对此有所了解。
[更新]
需要明确的是,实验确实表明,将两个组件对齐到顶部,您可以通过将一个设置为 havealMostTop
和另一个来选择哪个组件位于屏幕上方alTop
。
但是,我想到了另一种可能性:假设您有两个子组件,一个在左侧对齐,另一个在顶部对齐。然后他们将争夺左上角的所有权。实验似乎表明,可以通过在两个控件与对齐之间进行选择和对齐来alTop
获得一些影响。我无法确切地看到这里发生了什么,并且在文档中也不清楚。如果两个子控件都设置为.alMostLeft
alMostTop
alLeft
alMostTop