没有 BoxLayout 的 JComponent 的 AlignmentX 和 Y

AlignmentX and Y of a JComponent without a BoxLayout

我看到有些人在没有 BoxLayout 的情况下使用 setAlignmentX()setAlignmentY() 方法(例如,当使用 BorderLayout 和其他类型的布局时)。

这是正确的还是它有什么作用?我还没有找到任何说明在 JComponents 中使用 alignmentX 和 alignmentY 的文档,但我一直认为它只影响 BoxLayouts。

正如@camickr 在评论中所述,alignmentXalignmentYJComponent 的属性,布局管理器可以选择是否support/respect 它们。

在本机布局管理器中,只有 BoxLayout 支持此属性,因此如果您尝试在其他布局(例如 FlowLayout、BorderLayout...)上使用它们,它不会执行任何操作。

当然你可以create your custom layout manager并选择是否尊重这些属性。