The java.awt.Panel or Panel is a container that is designed to group a set of components, including other panels. It is visually represented as window that does not contain a title bar, menu bar or border. Panels are represented by objects created from Panel class by calling the constructor. The java.awt.Panel class has two constructors:
Method | Description |
Panel () | Constructs a panel with the default alignment (FlowLayout). |
Panel (LayoutManager) | Constructs a panel with the specified alignment. |
java.awt.Panel class shares the following methods with their ancestor class java.awt.Container.
Method | Description |
add (Component) | Adds the specified component to the container. |
add (Component, int) | Adds the specified component to the container in position indicated. |
doLayout () | Cause the rearrangement of the components of the container according to its layout. |
getComponent (int) | Obtain a reference to the indicated component. |
getComponentsCount () | Returns the number of components in the container. |
getComponentAt (int, int) | Obtain a reference to the existing component given position. |
GetLayout () | Gets the layout manager for the container. |
paint (Graphics) | Renders the container. |
remove (int) | Removes the given component. |
removeAll () | Removes all the components of the container. |
setLayout (LayoutManager) | Specifies the layout manager for the container. |
updates (Graphics) | Updates the rendering of the container. |
After the panel has been created, other components can be added to Panel object by calling its add (Component c) method inherited from the Container class. The following code fragment demonstrates creating a panel and adding two buttons to it.
Panel p = new Panel();
p. add (new Button (“OK”);
p.add(new Button(“Cancel”);
Using panels, you can design complex GUls.
import java.awt.*;
class PanelExample extends Frame
{
Panel panel1,panel2,panel3 ;
Label lblpanel1,lblpanel2,lblpanel3;
PanelExample()
{
setLayout(new FlowLayout());
panel1 = new Panel();
lblpanel1 = new Label("Panel with Gray Background");
panel1.add(lblpanel1);
Button bt1 = new Button("1");
panel1.add(bt1);
panel1.setBackground(Color.gray);
add(panel1);
panel2=new Panel();
lblpanel2 = new Label("Panel with Cyan Background");
panel2.add(lblpanel2);
Button bt2 = new Button("2");
panel2.add(bt2);
panel2.setBackground(Color.cyan);
add(panel2);
}
}
class PanelJavaExample
{
public static void main(String[] args)
{
PanelExample frame = new PanelExample();
frame.setTitle("Panels in Java Example");
frame.setSize(250,200);
frame.pack();
frame.setVisible(true);
}
}