如何获取JFrame中特定布局位置的组件

时间:2014-04-08 23:32:36

标签: java swing layout jframe border-layout

我有JFrame使用BorderLayout。如何获取此JFrame左侧或右侧或任何其他位置的所有组件?

1 个答案:

答案 0 :(得分:4)

正如@brano建议的那样,您可以通过LayoutManager的{​​{1}}的{​​{1}}访问这些组件。

例如,假设您想要获取位于JFrame上的组件(并且contentPane被称为BorderLayout.WEST),您可以这样做:

JFrame

但请注意:frame方法不属于final BorderLayout layout = (BorderLayout) frame.getContentPane().getLayout(); final Component west = layout.getLayoutComponent(BorderLayout.WEST); :因此,您必须知道并确保您的getLayoutComponent是实际的LayoutManager