Can one component (e.g. a JLabel) be in multiple cards using CardLayout?

Currently it seems that the component appears only at the last card it was added to.

If there is a way to do this, should I? Is it bad practice? Or is there some alternative?

有帮助吗?

解决方案

You are correct that it only appears in the "last card it was added to", but that has nothing to do with CardLayout, that has to do with the fact each component can only be in one parent.

From the Javadoc for java.awt.Container.addImpl(Component comp, Object constraints, int index):

If the component is not an ancestor of this container and has a non-null parent, it is removed from its current parent before it is added to this container.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top