| java.lang.Object com.izforge.izpack.gui.FlowLayout
FlowLayout | public class FlowLayout implements LayoutManager(Code) | | A flow layout arranges components in a left-to-right flow, much like lines of text in a
paragraph. Flow layouts are typically used to arrange buttons in a panel. It will arrange buttons
left to right until no more buttons fit on the same line. Each line is centered.
For example, the following picture shows an applet using the flow layout manager (its default
layout manager) to position three buttons:
Here is the code for this applet:
import java.awt.*;
import java.applet.Applet;
public class myButtons extends Applet
{
Button button1, button2, button3;
public void init()
{
button1 = new Button("Ok");
button2 = new Button("Open");
button3 = new Button("Close");
add(button1);
add(button2);
add(button3);
}
}
A flow layout lets each component assume its natural (preferred) size.
This class is a bit different from java.awt.FlowLayout. java.awt.FlowLayout has a
minor problem that was bugging me when I wrote the UserInputPanel. FlowLayout puts some amount of
space in between each component that it lays out. In addition it adds that same amount of space
to the left and to the right of the entire group. Therefore items such as the RuleInputfield that
are laid out with a FlowLayout would never line up properly with the other components (it would
appear to be slightly indented). Because there is no way to circumvent this behavior in
FlowLayout (it's hard coded) I copied the source and modified it so that it does not add the
space to the left and to the right. Now my stuff lines up properly. (Elmar Grom)
version: 1.39, 11/29/02 author: Arthur van Hoff author: Sami Shaio author: Elmar Grom |
Field Summary | |
final public static int | CENTER This value indicates that each row of components should be centered. | final public static int | LEADING This value indicates that each row of components should be justified to the leading edge of
the container's orientation, for example, to the left in left-to-right orientations. | final public static int | LEFT This value indicates that each row of components should be left-justified. | final public static int | RIGHT This value indicates that each row of components should be right-justified. | final public static int | TRAILING This value indicates that each row of components should be justified to the leading edge of
the container's orientation, for example, to the right in left-to-right orientations. | int | align align is the proprty that determines how each row distributes empty space. | int | hgap The flow layout manager allows a seperation of components with gaps. | int | newAlign newAlign is the property that determines how each row distributes empty space
for the Java 2 platform, v1.2 and greater. | int | vgap The flow layout manager allows a seperation of components with gaps. |
Constructor Summary | |
public | FlowLayout() Constructs a new Flow Layout with a centered alignment and a default 5-unit horizontal and
vertical gap. | public | FlowLayout(int align) Constructs a new Flow Layout with the specified alignment and a default 5-unit horizontal and
vertical gap. | public | FlowLayout(int align, int hgap, int vgap) Creates a new flow layout manager with the indicated alignment and the indicated horizontal
and vertical gaps. |
CENTER | final public static int CENTER(Code) | | This value indicates that each row of components should be centered.
|
LEFT | final public static int LEFT(Code) | | This value indicates that each row of components should be left-justified.
|
RIGHT | final public static int RIGHT(Code) | | This value indicates that each row of components should be right-justified.
|
newAlign | int newAlign(Code) | | newAlign is the property that determines how each row distributes empty space
for the Java 2 platform, v1.2 and greater. It can be one of the following three values :
LEFT
RIGHT
CENTER
since: 1.2 See Also: FlowLayout.getAlignment See Also: FlowLayout.setAlignment |
FlowLayout | public FlowLayout()(Code) | | Constructs a new Flow Layout with a centered alignment and a default 5-unit horizontal and
vertical gap.
|
FlowLayout | public FlowLayout(int align)(Code) | | Constructs a new Flow Layout with the specified alignment and a default 5-unit horizontal and
vertical gap. The value of the alignment argument must be one of FlowLayout.LEFT ,
FlowLayout.RIGHT , or FlowLayout.CENTER .
Parameters: align - the alignment value |
FlowLayout | public FlowLayout(int align, int hgap, int vgap)(Code) | | Creates a new flow layout manager with the indicated alignment and the indicated horizontal
and vertical gaps.
The value of the alignment argument must be one of FlowLayout.LEFT ,
FlowLayout.RIGHT , or FlowLayout.CENTER .
Parameters: align - the alignment value. Parameters: hgap - the horizontal gap between components. Parameters: vgap - the vertical gap between components. |
addLayoutComponent | public void addLayoutComponent(String name, Component comp)(Code) | | Adds the specified component to the layout. Not used by this class.
Parameters: name - the name of the component Parameters: comp - the component to be added |
getAlignment | public int getAlignment()(Code) | | Gets the alignment for this layout. Possible values are FlowLayout.LEFT ,
FlowLayout.RIGHT , or FlowLayout.CENTER .
the alignment value for this layout. See Also: java.awt.FlowLayout.setAlignment |
getHgap | public int getHgap()(Code) | | Gets the horizontal gap between components.
the horizontal gap between components. See Also: FlowLayout.setHgap(int) |
getVgap | public int getVgap()(Code) | | Gets the vertical gap between components.
the vertical gap between components.\ See Also: FlowLayout.setVgap(int) |
layoutContainer | public void layoutContainer(Container target)(Code) | | Lays out the container. This method lets each component take its preferred size by reshaping
the components in the target container in order to satisfy the constraints of this
FlowLayout object.
Parameters: target - the specified component being laid out. |
minimumLayoutSize | public Dimension minimumLayoutSize(Container target)(Code) | | Returns the minimum dimensions needed to layout the components contained in the specified
target container.
Parameters: target - the component which needs to be laid out the minimum dimensions to lay out the subcomponents of the specified container. See Also: FlowLayout.preferredLayoutSize(Container) |
preferredLayoutSize | public Dimension preferredLayoutSize(Container target)(Code) | | Returns the preferred dimensions for this layout given the components in the specified target
container.
Parameters: target - the component which needs to be laid out the preferred dimensions to lay out the subcomponents of the specified container. See Also: FlowLayout.minimumLayoutSize(Container) |
removeLayoutComponent | public void removeLayoutComponent(Component comp)(Code) | | Removes the specified component from the layout. Not used by this class.
Parameters: comp - the component to remove |
setAlignment | public void setAlignment(int align)(Code) | | Sets the alignment for this layout. Possible values are FlowLayout.LEFT ,
FlowLayout.RIGHT , and FlowLayout.CENTER .
Parameters: align - the alignment value. See Also: FlowLayout.getAlignment() |
setHgap | public void setHgap(int hgap)(Code) | | Sets the horizontal gap between components.
Parameters: hgap - the horizontal gap between components See Also: FlowLayout.getHgap() |
setVgap | public void setVgap(int vgap)(Code) | | Sets the vertical gap between components.
Parameters: vgap - the vertical gap between components See Also: FlowLayout.getVgap() |
toString | public String toString()(Code) | | Returns a string representation of this FlowLayout object and its values.
a string representation of this layout. |
|
|