The document discusses different layout managers in Java including BorderLayout, GridLayout, FlowLayout, CardLayout, and BoxLayout. BorderLayout arranges components in five regions (north, south, east, west, center) with one component per region. GridLayout arranges components in a rectangular grid with the same number of components per row. FlowLayout arranges components in a line, one after another. CardLayout displays one component at a time, treating each like a card. BoxLayout arranges components along an axis.
LayoutManagers The LayoutManagers areused to arrange components in a particular manner. LayoutManager is an interface that is implemented by all the classes of layout managers. A layout manager is an object that controls the size and the position of components in a container. Every Container object has a LayoutManager object that controls its layout. 2
3.
There are followingclasses that represents the layout managers: java.awt.BorderLayout java.awt.FlowLayout java.awt.GridLayout java.awt.CardLayout java.awt.GridBagLayout javax.swing.BoxLayout javax.swing.GroupLayout javax.swing.ScrollPaneLayout javax.swing.SpringLayout etc. 3
4.
BorderLayout: The BorderLayout isused to arrange the components in five regions: north, south, east, west and center. Each region (area) may contain one component only. It is the default layout of frame or window. The BorderLayout provides five constants for each region: public static final int NORTH public static final int SOUTH public static final int EAST public static final int WEST public static final int CENTER 4
5.
Example of BorderLayoutclass: Constructors of BorderLayout class: BorderLayout(): creates a border layout but with no gaps between the components. BorderLayout(int hgap, int vgap): creates a border layout with the given horizontal and vertical gaps between the components. 5
6.
GridLayout The GridLayout isused to arrange the components in rectangular grid. One component is displayed in each rectangle. Constructors of GridLayout class: 1.GridLayout(): creates a grid layout with one column per component in a row. 2.GridLayout(int rows, int columns): creates a grid layout with the given rows and columns but no gaps between the components. 3.GridLayout(int rows, int columns, int hgap, int vgap): creates a grid layout with the given rows and columns alongwith given horizontal and vertical gaps. 6
FlowLayout The FlowLayout isused to arrange the components in a line, one after another (in a flow). It is the default layout of applet or panel. Fields of FlowLayout class: 1.public static final int LEFT 2.public static final int RIGHT 3.public static final int CENTER 4.public static final int LEADING 5.public static final int TRAILING 8
9.
Constructors of FlowLayoutclass: 1.FlowLayout(): creates a flow layout with centered alignment and a default 5 unit horizontal and vertical gap. 2.FlowLayout(int align): creates a flow layout with the given alignment and a default 5 unit horizontal and vertical gap. 3.FlowLayout(int align, int hgap, int vgap): creates a flow layout with the given alignment and the given horizontal and vertical gap. 9
11 CardLayout class The CardLayoutclass manages the components in such a manner that only one component is visible at a time. It treats each component as a card that is why it is known as CardLayout. Constructors CardLayout(): creates a card layout with zero horizontal and vertical gap. CardLayout(int hgap, int vgap): creates a card layout with the given horizontal and vertical gap.
12.
12 methods public void next(Containerparent): is used to flip to the next card of the given container. public void previous(Container parent): is used to flip to the previous card of the given container. public void first(Container parent): is used to flip to the first card of the given container. public void last(Container parent): is used to flip to the last card of the given container. public void show(Container parent, String name): is used to flip to the specified card with the given name.
13.
13 BoxLayout class Fields ofBoxLayout class: public static final int X_AXIS public static final int Y_AXIS public static final int LINE_AXIS public static final int PAGE_AXIS Constructor of BoxLayout class: BoxLayout(Container c, int axis): creates a box layout that arranges the components with the given axis.