CardLayout
object is a layout manager for a
container. It treats each component in the container as a card.
Only one card is visible at a time, and the container acts as
a stack of cards. The first component added to a
CardLayout
object is the visible component when the
container is first displayed.
The ordering of cards is determined by the container's own internal
ordering of its component objects. CardLayout
defines a set of methods that allow an application to flip
through these cards sequentially, or to show a specified card.
The addLayoutComponent(java.awt.Component, java.lang.Object)
method can be used to associate a string identifier with a given card
for fast random access.
Container
,
Serialized FormConstructor and Description |
---|
CardLayout()
Creates a new card layout with gaps of size zero.
|
CardLayout(int hgap,
int vgap)
Creates a new card layout with the specified horizontal and
vertical gaps.
|
Modifier and Type | Method and Description |
---|---|
void |
addLayoutComponent(Component comp,
java.lang.Object constraints)
Adds the specified component to this card layout's internal
table of names.
|
void |
addLayoutComponent(java.lang.String name,
Component comp)
Deprecated replaced by
addLayoutComponent(Component, Object) . |
void |
first(Container parent)
Flips to the first card of the container.
|
int |
getHgap()
Gets the horizontal gap between components.
|
float |
getLayoutAlignmentX(Container parent)
Returns the alignment along the x axis.
|
float |
getLayoutAlignmentY(Container parent)
Returns the alignment along the y axis.
|
int |
getVgap()
Gets the vertical gap between components.
|
void |
invalidateLayout(Container target)
Invalidates the layout, indicating that if the layout manager
has cached information it should be discarded.
|
void |
last(Container parent)
Flips to the last card of the container.
|
void |
layoutContainer(Container parent)
Lays out the specified container using this card layout.
|
Dimension |
maximumLayoutSize(Container target)
Returns the maximum dimensions for this layout given the components
in the specified target container.
|
Dimension |
minimumLayoutSize(Container parent)
Calculates the minimum size for the specified panel.
|
void |
next(Container parent)
Flips to the next card of the specified container.
|
Dimension |
preferredLayoutSize(Container parent)
Determines the preferred size of the container argument using
this card layout.
|
void |
previous(Container parent)
Flips to the previous card of the specified container.
|
void |
removeLayoutComponent(Component comp)
Removes the specified component from the layout.
|
void |
setHgap(int hgap)
Sets the horizontal gap between components.
|
void |
setVgap(int vgap)
Sets the vertical gap between components.
|
void |
show(Container parent,
java.lang.String name)
Flips to the component that was added to this layout with the
specified
name , using addLayoutComponent . |
java.lang.String |
toString()
Returns a string representation of the state of this card layout.
|
hgap
- the horizontal gap.vgap
- the vertical gap.setHgap(int)
,
getVgap()
hgap
- the horizontal gap between components.getHgap()
,
setVgap(int)
setVgap(int)
,
getHgap()
vgap
- the vertical gap between components.getVgap()
,
setHgap(int)
constraints
must be a string. The card layout stores this string as a key-value
pair that can be used for random access to a particular card.
By calling the show
method, an application can
display the component with the specified name.addLayoutComponent
in interface LayoutManager2
comp
- the component to be added.constraints
- a tag that identifies a particular
card in the layout.java.lang.IllegalArgumentException
- if the constraint is not a string.show(java.awt.Container, java.lang.String)
addLayoutComponent(Component, Object)
.LayoutManager
comp
to the layout,
associating it
with the string specified by name
.addLayoutComponent
in interface LayoutManager
name
- the string to be associated with the componentcomp
- the component to be addedremoveLayoutComponent
in interface LayoutManager
comp
- the component to be removed.Container.remove(java.awt.Component)
,
Container.removeAll()
preferredLayoutSize
in interface LayoutManager
parent
- the parent container in which to do the layoutContainer.getPreferredSize()
,
minimumLayoutSize(java.awt.Container)
minimumLayoutSize
in interface LayoutManager
parent
- the parent container in which to do the layoutContainer.doLayout()
,
preferredLayoutSize(java.awt.Container)
maximumLayoutSize
in interface LayoutManager2
target
- the component which needs to be laid outContainer
,
minimumLayoutSize(java.awt.Container)
,
preferredLayoutSize(java.awt.Container)
getLayoutAlignmentX
in interface LayoutManager2
getLayoutAlignmentY
in interface LayoutManager2
invalidateLayout
in interface LayoutManager2
Each component in the parent
container is reshaped
to be the size of the container, minus space for surrounding
insets, horizontal gaps, and vertical gaps.
layoutContainer
in interface LayoutManager
parent
- the parent container in which to do the layoutContainer.doLayout()
parent
- the parent container in which to do the layoutlast(java.awt.Container)
parent
- the parent container in which to do the layoutprevious(java.awt.Container)
parent
- the parent container in which to do the layoutnext(java.awt.Container)
parent
- the parent container in which to do the layoutfirst(java.awt.Container)
name
, using addLayoutComponent
.
If no such component exists, then nothing happens.parent
- the parent container in which to do the layoutname
- the component nameaddLayoutComponent(java.awt.Component, java.lang.Object)
toString
in class java.lang.Object