LayoutManagers:
The LayoutManagers are used to arrange components in a particular manner. LayoutManager is an interface that is implemented by all the classes of layout managers. There are following classes 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.
BorderLayout:
The BorderLayout is used 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
Constructors of BorderLayout class:
- BorderLayout(): creates a border layout but with no gaps between the components.
- JBorderLayout(int hgap, int vgap): creates a border layout with the given horizontal and vertical gaps between the components.
Example of BorderLayout class:
- import java.awt.*;
- import javax.swing.*;
-
- public class Border {
- JFrame f;
- Border(){
- f=new JFrame();
-
- JButton b1=new JButton("NORTH");;
- JButton b2=new JButton("SOUTH");;
- JButton b3=new JButton("EAST");;
- JButton b4=new JButton("WEST");;
- JButton b5=new JButton("CENTER");;
-
- f.add(b1,BorderLayout.NORTH);
- f.add(b2,BorderLayout.SOUTH);
- f.add(b3,BorderLayout.EAST);
- f.add(b4,BorderLayout.WEST);
- f.add(b5,BorderLayout.CENTER);
-
- f.setSize(300,300);
- f.setVisible(true);
- }
- public static void main(String[] args) {
- new Border();
}

GridLayout
| The GridLayout is used to arrange the components in rectangular grid. One component is displayed in each rectangle. |
Constructors of GridLayout class:
- GridLayout(): creates a grid layout with one column per component in a row.
- GridLayout(int rows, int columns): creates a grid layout with the given rows and columns but no gaps between the components.
- 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.
|
Example of GridLayout class:
- import java.awt.*;
- import javax.swing.*;
-
- public class MyGridLayout{
- JFrame f;
- MyGridLayout(){
- f=new JFrame();
-
- JButton b1=new JButton("1");
- JButton b2=new JButton("2");
- JButton b3=new JButton("3");
- JButton b4=new JButton("4");
- JButton b5=new JButton("5");
- JButton b6=new JButton("6");
- JButton b7=new JButton("7");
- JButton b8=new JButton("8");
- JButton b9=new JButton("9");
-
- f.add(b1);f.add(b2);f.add(b3);f.add(b4);f.add(b5);
- f.add(b6);f.add(b7);f.add(b8);f.add(b9);
-
- f.setLayout(new GridLayout(3,3));
-
-
- f.setSize(300,300);
- f.setVisible(true);
- }
- public static void main(String[] args) {
- new MyGridLayout();
- }
- }

FlowLayout
| The FlowLayout is used 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:
- public static final int LEFT
- public static final int RIGHT
- public static final int CENTER
- public static final int LEADING
- public static final int TRAILING
|
Constructors of FlowLayout class:
- FlowLayout(): creates a flow layout with centered alignment and a default 5 unit horizontal and vertical gap.
- FlowLayout(int align): creates a flow layout with the given alignment and a default 5 unit horizontal and vertical gap.
- FlowLayout(int align, int hgap, int vgap): creates a flow layout with the given alignment and the given horizontal and vertical gap.
Example of FlowLayout class:
- import java.awt.*;
- import javax.swing.*;
-
- public class MyFlowLayout{
- JFrame f;
- MyFlowLayout(){
- f=new JFrame();
-
- JButton b1=new JButton("1");
- JButton b2=new JButton("2");
- JButton b3=new JButton("3");
- JButton b4=new JButton("4");
- JButton b5=new JButton("5");
-
- f.add(b1);f.add(b2);f.add(b3);f.add(b4);f.add(b5);
-
- f.setLayout(new FlowLayout(FlowLayout.RIGHT));
-
-
- f.setSize(300,300);
- f.setVisible(true);
- }
- public static void main(String[] args) {
- new MyFlowLayout();
- }
- }
|
No comments:
Post a Comment