0

可能重复:
CardLayout 的父容器/面板

如何从卡片面板本身显示卡片面板(其布局不是 CardLayout,但包含在具有 CardLayout 的面板中)?我不想在容器中放置单独的导航栏,因为我需要访问卡片数据.

4

1 回答 1

0

您可以使用面板的 getParent() 方法访问父组件(此方法可从每个 AWT/Swing 组件访问)。如果您的面板没有直接放置在具有卡片布局的面板中,则应迭代调用此方法,直到获得所需的面板。

例子:

Component myComp; // for example your navigation bar
Component parent = myComp.getParent();
while (null != parent) {
  if (parent.getLayout() instanceof CardLayout) {
    break;
  }
  parent = parent.getParent();
}
if (null != parent) {
  // now we have parent with the card layout
}
于 2013-02-02T11:08:47.217 回答