我有JFrame
使用BorderLayout
。如何获取此JFrame
左侧或右侧或任何其他位置的所有组件?
答案 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
。