SlideShare a Scribd company logo
Programming in JAVA
Topic: GUI Basics (AWT)
Introduction
• AWT is a java API that is used to develop GUI applications in
Java.
• API is a collection of classes and interfaces that provide the
basic infrastructure or core functionalities for developing
specific type of application.
• There are three types of GUI classes:
1) Container classes
2) Component classes
3) Helper classes
Component Classes
• An instance of Component can be displayed on the screen.
• Component is the root class of all the user-interface classes
including container classes, and JComponent is the root class of
all the lightweight Swing components.
• Button, Label, TextField etc.
Container Classes
• An instance of Container can hold instances of Component.
• Container classes are GUI components that are used to contain
other GUI components.
• Window, Panel, Applet, Frame, and Dialog are the container
classes for AWT components.
Helper Classes
• The helper classes, such as Graphics, Color, Font, FontMetrics,
Dimension, and LayoutManager, are not subclasses of
Component.
• They are used to describe the properties of GUI components,
such as graphics context, colors, fonts, and dimension etc.
AWT Classes
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Class Description
AWTEvent Encapsulates AWT events
Button Creates a push button control
Canvas A blank, semantics-free window
Checkbox Creates a check box control
CheckboxGroup Creates a group of check box controls
Color Manages colors in a portable, platform-independent fashion
Font Encapsulates a type font
Frame Creates a standard window that has a title bar, resize corners,
and a menu bar
Graphics Encapsulates the graphics context. This context is used by the
various output methods to display output in a window.
AWT classes
Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India)
Class Description
TextField Creates a single-line edit control
TextArea Creates a multiline edit control
Window Creates a window with no frame, no menu bar, and no title
Scrollbar Creates a scroll bar control
MenuItem Creates a menu item
Menu Creates a pull-down menu
MenuBar Creates a menu bar
MenuShortcut Encapsulates a keyboard shortcut for a menu item
ScrollPane A container that provides horizontal and/or vertical scroll bars
for another component
Component Class Hierarchy of AWT
Component
Container
(Non-Container)
Window Panel
Frame Applet
Button Label Text Field Check-Box Text Area etc.
• Component is an abstract class that describes the basic
functionality supported by all AWT components.
• Container is a sub-class of Component that adds the
functionality of containership to a component.
• A Container component can contain another container or non-
container components.
• Window and Panel are two non-abstract sub-classes of
Container.
Component Cont…
• Panel represents a rectangular region that does not have a
border and title bar.
• Window is a Panel with border and title bar.
• Window can independently exist whereas panel can’t.
• Frame is a sub-class of Window .
• Button, Label, TextField, CheckBox etc. are non-container
components.
Component
• Component is an abstract class that encapsulates all of the
attributes of a visual component.
• All user interface elements that are displayed on the screen and
that interact with the user are subclasses of Component.
• It defines over a hundred public methods that are responsible for
managing events, such as mouse and keyboard input, positioning
and sizing the window, and repainting.
• A Component object is responsible for remembering the current
foreground and background colors and the currently selected text
font.
Commonly Used Methods of Component Class
• setBackground(): used to change the background color of a
component.
public void setBackground ( Color c)
Note: color is a helper class.
• setForeground(): used to change the foreground color of a
component.
public void setForeground ( Font obj)
• Font is represented by java.awt.Font.
public Font (String FontName, int Style, int Size)
e.g. : Font f = (“Times New Roman”, Font.BOLD, 20);
• setBounds(): used to specify size and position of component in
a container.
public void setBounds (int left, int top, int width, int height)
Container
• Container class is a subclass of Component.
• It has additional methods that allow other Component objects to be
nested within it.
• Other Container objects can be stored inside of a Container (since
they are themselves instances of Component).
• This makes for a multileveled containment system.
• A container is responsible for laying out (that is, positioning) any
components that it contains. It does this through the use of various
layout managers.
Commonly used methods of Container Class
• add(): used to add components to a container.
public void add (Component c)
• setSize(): used to specify the size of a container.
public void setSize(int width, int height)
• setLayout(): used to specify the layout manager for a container.
public void setLayout (LayoutManager mgr)
• setVisible(boolean visibility): used to set the visibility of
container.
public void setVisible (boolean visibility)
Panel
• Panel is a window that does not contain a title bar, menu bar, or
border.
• The screen output of an applet is drawn on the surface of a Panel
object. But it is not visible when applet is run inside a browser.
• When we run an applet using an applet viewer, the applet viewer
provides the title and border.
• Other components can be added to a Panel object by its add( )
method (inherited from Container).
• We can position and resize the components of a panel manually
using the setLocation( ), setSize( ), setPreferredSize( ), or
setBounds( ) methods defined by Component.
Window
• Window class creates a top-level window.
• A top-level window is not contained within any other object; it
sits directly on the desktop.
• Generally, we won’t create Window objects directly. Instead, we
use a subclass of Window called Frame.
Frame
• It is a subclass of Window and has a title bar, menu bar, borders,
and resizing corners.
• Frame encapsulates what is commonly thought of as a
“window.”
Frame
Constructor:
public Frame ()
public Frame (String Title)
Methods:
public String getTitle ()
public void setTitle (String Title)
public void setVisibile(boolean Visibility)
Label
• Used to describe other components or to display information on
a container.
Constructors:
public Label()
public Label (String s)
Methods:
• public String getText(): used to display the text on a Label.
• public void setText(): used to change the text.
Button
• Buttons are used to initiate action.
Constructor:
public Button ()
public Button (String Name)
Methods:
public String getLabel()
public void setLabel(String Name)
TextField
• Used to receive input and display the output/result.
Constructor:
public TextField ()
public TextField (String Text)
public TextField (int No_of Chars)
Methods:
public String getText ()
public void setText (String Text)
public void setEchoChar ( char x)
public void setEditable (boolean editability)
public boolean isEditable()
TextArea
• Used to display multiple lines of output/result.
Constructor:
public TextArea()
public TextArea (String Text)
public TextArea (int numLines, int numChars)
public TextArea (String str, int numLines, int numChars, int sBars)
sBars Constants: (SCROLLBARS_NONE, SCROLLBARS_BOTH,
SCROLLBARS_HORIZONTAL_ONLY, SCROLLBARS_VERTICAL_ONLY)
Methods:
Supports all the methods of TextArea.
void append(String str)
void insert(String str, int index)
void replaceRange(String str, int startIndex, int endIndex)
Checkbox and RadioButtons
• Checkbox and CheckboxGroup classes are used to create
RadioButtons.
public Checkbox (String Text)
public Checkbox (String Text, Boolean State)
public Checkbox (String Text, Boolean State,
CheckboxGroup cbg )
public Checkbox (String Text, CheckboxGroup cbg, Boolean
State, )
Methods
• boolean getState( )
• void setState(boolean on)
• String getLabel( )
• void setLabel(String str)
CheckboxGroup
• Used to create a set of mutually exclusive check boxes in which
one and only one check box in the group can be checked at a
time.
Constructor:
public CheckboxGroup()
Methods:
Checkbox getSelectedCheckbox( )
void setSelectedCheckbox(Checkbox which)
Menu Bars and Menus
• Menu is implemented in AWT by the following classes:
MenuBar, Menu, and MenuItem.
• A menu bar displays a list of top-level menu choices. Each choice is
associated with a drop-down menu.
• A menu bar contains one or more Menu objects. Each Menu object contains
a list of MenuItem objects.
• Each MenuItem object represents something that can be selected by the user.
• Since Menu is a subclass of MenuItem, a hierarchy of nested submenus can
be created.
• Checkable menu items are menu options of type CheckboxMenuItem and
will have a check mark next to them when they are selected.
Creating Menus
• To create a menu bar, first create an instance of MenuBar. This class
only defines the default constructor.
• Next, create instances of Menu that will define the selections
displayed on the bar. Following are the constructors for Menu:
Menu( ) throws HeadlessException
Menu(String optionName) throws HeadlessException
• Individual menu items are of type MenuItem. It defines these
constructors:
MenuItem( ) throws HeadlessException
MenuItem(String itemName) throws HeadlessException
MenuItem(String itemName, MenuShortcut keyAccel) throws
HeadlessException
• We can disable or enable a menu item by using the setEnabled( )
method.
void setEnabled (boolean enabledFlag)
• If the argument enabledFlag is true, the menu item is enabled. If false,
the menu item is disabled.
• We can determine an item’s status by calling isEnabled( ).
boolean isEnabled( )
• isEnabled( ) returns true if the menu item on which it is called is
enabled. Otherwise, it returns false.
• We can change the name of a menu item by calling setLabel( ). We
can retrieve the current name by using getLabel( ).
void setLabel(String newName)
String getLabel( )
CheckboxMenuItem
• We can create a checkable menu item by using a subclass of
MenuItem called CheckboxMenuItem.
CheckboxMenuItem( ) throws HeadlessException
CheckboxMenuItem(String itemName) throws HeadlessException
CheckboxMenuItem(String itemName, boolean on) throws
HeadlessException
• We can obtain the status of a checkable item by calling getState( ).
You can set it to a known state by using setState( ).
boolean getState( )
void setState(boolean checked)
Note: HeadlessException is Thrown when code that is dependent on a
keyboard, display, or mouse is called in an environment that does not
support a keyboard, display, or mouse.
Choice
• The Choice class presents a pop-up menu of choices.
• The current choice is displayed as the title of the menu.
Choice c = new Choice(); // Only default constructor available
c.add(“B. Tech.”); c.add(“BCA”); c.add(“B. Arch.”);
Methods:
String getItem(int index)
int getItemCount()
String getSelectedItem()
int getSelectedIndex()
List
• The List class provides a compact, multiple-choice, scrolling
selection list.
Constructors:
List( )
List(int numRows)
List(int numRows, boolean multipleSelect)
Methods:
void add(String name)
void add(String name, int index)
String getSelectedItem() String[] getSelectedItems()
int getSelectedIndex() int[] getSelectedIndexes()
Layout Manager classes
LayoutManager class Description
BorderLayout The border layout manager. Border layouts use five
components: North, South, East, West, and Center
CardLayout The card layout manager. Card layouts emulate index
cards. Only the one on top is showing.
GridLayout The grid layout manager. Grid layout displays
components in a two-dimensional grid.
FlowLayout The flow layout manager. Flow layout positions
components left to right, top to bottom.
FlowLayout
• Arranges the components in left to right, top to bottom fashion.
• It is the default layout manager for Panel.
public FlowLayout ()
public FlowLayout (int alignment)
public FlowLayout (int alignment, int H_Gap, int V_Gap)
• Alignments are specified as:
FlowLayout.LEFT
FlowLayout.RIGHT
FlowLayout.CENTER
• By default 5 pixels is used as horizontal and vertical gap between
components.
FlowLayout fl = new FlowLayout (FlowLayout.CENTER, 30, 20);
frm.setLayout(fl);
GridLayout
• It divides a container into a grid of specified rows and columns.
Each to display one component.
• Size of component is changed according to the size of the cell.
public GridLayout (int row, int column)
public GridLayout (int row, int column, int H_Gap, int V_Gap)
GridLayout gl = new GridLayout (3, 4);
frm.setLayout (gl);
GridLayout gl1 = new GridLayout (3, 4, 20, 30);
frm.setLayout (gl2);
BorderLayout
• It divides the container into 5 regions ( NORTH, SOUTH,
EAST, WEST and CENTER).
• It is the default layout manager for Window.
public BorderLayout()
• To add a component at a specific region, following method is
used:
public void add ( Component c, int Region)
Example:
Button btn = new Button(“OK”);
frm.add( btn, BorderLayout.EAST);
CardLayout
• It is used to arrange containers in the form of deck of cards.
Methods:
first() / last()/ next()/ previous(): is used to make the first/ last/
next/ previous card visible.
show(): is used to make a specified card visible.
public void show ( Container deck, String CardName)
• To give a name to the container while it is added to the deck:
public void add ( Container card, String CardName)
Steps to Create a Frame-based Interface
1) Create a Frame object.
2) Create Component Objects.
3) Add the Component objects to Frame.
4) Set the size of the Frame and make it visible.
My First Application
import java.awt.*;
class MyFirstApp
{
static TextField t1,t2,t3; static Button b1;
public static void main(String arr[])
{
Frame f = new Frame ("My Calculator");
Label l1 = new Label (“1st Number"); Label l2 = new Label (“2nd Number");
Label l3 = new Label ("Result");
t1 = new TextField(20); t2 = new TextField(20);
t3 = new TextField(20); t3.setEditable(false);
b1 = new Button("Add");
f.setLayout(new FlowLayout());
f.add(l1); f.add(t1); f.add(l2); f.add(t2); f.add(l3); f.add(t3); f.add(b1);
f.setSize(200,250); f.setVisible(true);
}
}

More Related Content

What's hot

25 awt
25 awt25 awt
25 awt
degestive
 
Swing and AWT in java
Swing and AWT in javaSwing and AWT in java
Swing and AWT in java
Adil Mehmoood
 
Java awt
Java awtJava awt
Java awt
Arati Gadgil
 
GUI components in Java
GUI components in JavaGUI components in Java
GUI components in Java
kirupasuchi1996
 
Java: GUI
Java: GUIJava: GUI
Java: GUI
Tareq Hasan
 
Dr. Rajeshree Khande :Introduction to Java AWT
Dr. Rajeshree Khande :Introduction to Java AWTDr. Rajeshree Khande :Introduction to Java AWT
Dr. Rajeshree Khande :Introduction to Java AWT
DrRajeshreeKhande
 
Gui
GuiGui
Swing
SwingSwing
JAVA AWT
JAVA AWTJAVA AWT
JAVA AWT
shanmuga rajan
 
AWT Packages , Containers and Components
AWT Packages , Containers and ComponentsAWT Packages , Containers and Components
AWT Packages , Containers and Components
Sohanur63
 
GUI Programming In Java
GUI Programming In JavaGUI Programming In Java
GUI Programming In Java
yht4ever
 
java swing
java swingjava swing
java swing
Waheed Warraich
 
Basic using of Swing in Java
Basic using of Swing in JavaBasic using of Swing in Java
Basic using of Swing in Java
suraj pandey
 
Complete java swing
Complete java swingComplete java swing
Complete java swing
jehan1987
 
Java- GUI- Mazenet solution
Java- GUI- Mazenet solutionJava- GUI- Mazenet solution
Java- GUI- Mazenet solution
Mazenetsolution
 
Java swing
Java swingJava swing
Java swing
Apurbo Datta
 
GUI programming
GUI programmingGUI programming
GUI programming
Vineeta Garg
 
Chapter 1 swings
Chapter 1 swingsChapter 1 swings
Chapter 1 swings
Jafar Nesargi
 
Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1
PRN USM
 
Graphical User Interface (Gui)
Graphical User Interface (Gui)Graphical User Interface (Gui)
Graphical User Interface (Gui)
Bilal Amjad
 

What's hot (20)

25 awt
25 awt25 awt
25 awt
 
Swing and AWT in java
Swing and AWT in javaSwing and AWT in java
Swing and AWT in java
 
Java awt
Java awtJava awt
Java awt
 
GUI components in Java
GUI components in JavaGUI components in Java
GUI components in Java
 
Java: GUI
Java: GUIJava: GUI
Java: GUI
 
Dr. Rajeshree Khande :Introduction to Java AWT
Dr. Rajeshree Khande :Introduction to Java AWTDr. Rajeshree Khande :Introduction to Java AWT
Dr. Rajeshree Khande :Introduction to Java AWT
 
Gui
GuiGui
Gui
 
Swing
SwingSwing
Swing
 
JAVA AWT
JAVA AWTJAVA AWT
JAVA AWT
 
AWT Packages , Containers and Components
AWT Packages , Containers and ComponentsAWT Packages , Containers and Components
AWT Packages , Containers and Components
 
GUI Programming In Java
GUI Programming In JavaGUI Programming In Java
GUI Programming In Java
 
java swing
java swingjava swing
java swing
 
Basic using of Swing in Java
Basic using of Swing in JavaBasic using of Swing in Java
Basic using of Swing in Java
 
Complete java swing
Complete java swingComplete java swing
Complete java swing
 
Java- GUI- Mazenet solution
Java- GUI- Mazenet solutionJava- GUI- Mazenet solution
Java- GUI- Mazenet solution
 
Java swing
Java swingJava swing
Java swing
 
GUI programming
GUI programmingGUI programming
GUI programming
 
Chapter 1 swings
Chapter 1 swingsChapter 1 swings
Chapter 1 swings
 
Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1Graphical User Interface (GUI) - 1
Graphical User Interface (GUI) - 1
 
Graphical User Interface (Gui)
Graphical User Interface (Gui)Graphical User Interface (Gui)
Graphical User Interface (Gui)
 

Viewers also liked

Swing is not dead
Swing is not deadSwing is not dead
Swing is not dead
Piotr Dziewonski
 
Java AWT
Java AWTJava AWT
Java AWT
Stefano Sanna
 
Event Handling in java
Event Handling in javaEvent Handling in java
Event Handling in java
Google
 
java applets
java appletsjava applets
java applets
Waheed Warraich
 
Applets
AppletsApplets
Java applets
Java appletsJava applets
Java applets
lopjuan
 
Event handling
Event handlingEvent handling
Event handling
Anand Grewal
 
Java: Java Applets
Java: Java AppletsJava: Java Applets
Java: Java Applets
Tareq Hasan
 

Viewers also liked (8)

Swing is not dead
Swing is not deadSwing is not dead
Swing is not dead
 
Java AWT
Java AWTJava AWT
Java AWT
 
Event Handling in java
Event Handling in javaEvent Handling in java
Event Handling in java
 
java applets
java appletsjava applets
java applets
 
Applets
AppletsApplets
Applets
 
Java applets
Java appletsJava applets
Java applets
 
Event handling
Event handlingEvent handling
Event handling
 
Java: Java Applets
Java: Java AppletsJava: Java Applets
Java: Java Applets
 

Similar to tL19 awt

13457272.ppt
13457272.ppt13457272.ppt
13457272.ppt
aptechaligarh
 
JAVA Programming: Topic -AWT(Abstract Window Tool )
JAVA Programming: Topic -AWT(Abstract Window Tool )JAVA Programming: Topic -AWT(Abstract Window Tool )
JAVA Programming: Topic -AWT(Abstract Window Tool )
Navya Francis
 
Ajp notes-chapter-01
Ajp notes-chapter-01Ajp notes-chapter-01
Ajp notes-chapter-01
Ankit Dubey
 
Ajp notes-chapter-01
Ajp notes-chapter-01Ajp notes-chapter-01
Ajp notes-chapter-01
JONDHLEPOLY
 
events,key,life cycle-abstract window tool kit,abstract class
events,key,life cycle-abstract window tool kit,abstract classevents,key,life cycle-abstract window tool kit,abstract class
events,key,life cycle-abstract window tool kit,abstract class
Rohit Kumar
 
AWT.pptx
AWT.pptxAWT.pptx
AWT.pptx
FAHMIDAASEEZ1
 
object oriented programming examples
object oriented programming examplesobject oriented programming examples
object oriented programming examples
Abdii Rashid
 
Gui programming (awt)
Gui programming (awt)Gui programming (awt)
Gui programming (awt)
Ravi_Kant_Sahu
 
GUI.pdf
GUI.pdfGUI.pdf
GUI.pdf
Poornima E.G.
 
17625-1.pptx
17625-1.pptx17625-1.pptx
17625-1.pptx
BhaskarDharmadhikari
 
Python Graphical User Interface and design
Python Graphical User Interface and designPython Graphical User Interface and design
Python Graphical User Interface and design
VardhanKulkarni
 
Chapter iii(building a simple user interface)
Chapter iii(building a simple user interface)Chapter iii(building a simple user interface)
Chapter iii(building a simple user interface)
Chhom Karath
 
Abstract Window Toolkit
Abstract Window ToolkitAbstract Window Toolkit
Abstract Window Toolkit
RutvaThakkar1
 
Java awt (abstract window toolkit)
Java awt (abstract window toolkit)Java awt (abstract window toolkit)
Java awt (abstract window toolkit)
Elizabeth alexander
 
Unit-1 awt advanced java programming
Unit-1 awt advanced java programmingUnit-1 awt advanced java programming
Unit-1 awt advanced java programming
Amol Gaikwad
 
UNIT-2-AJAVA.pdf
UNIT-2-AJAVA.pdfUNIT-2-AJAVA.pdf
UNIT-2-AJAVA.pdf
PriyanshiPrajapati27
 
Gui programming
Gui programmingGui programming
Gui programming
manikanta361
 
Chap 1 - Introduction GUI.pptx
Chap 1 - Introduction GUI.pptxChap 1 - Introduction GUI.pptx
Chap 1 - Introduction GUI.pptx
TadeseBeyene
 
Windows Programming with AWT
Windows Programming with AWTWindows Programming with AWT
Windows Programming with AWT
backdoor
 
Unit 5 java-awt (1)
Unit 5 java-awt (1)Unit 5 java-awt (1)
Unit 5 java-awt (1)
DevaKumari Vijay
 

Similar to tL19 awt (20)

13457272.ppt
13457272.ppt13457272.ppt
13457272.ppt
 
JAVA Programming: Topic -AWT(Abstract Window Tool )
JAVA Programming: Topic -AWT(Abstract Window Tool )JAVA Programming: Topic -AWT(Abstract Window Tool )
JAVA Programming: Topic -AWT(Abstract Window Tool )
 
Ajp notes-chapter-01
Ajp notes-chapter-01Ajp notes-chapter-01
Ajp notes-chapter-01
 
Ajp notes-chapter-01
Ajp notes-chapter-01Ajp notes-chapter-01
Ajp notes-chapter-01
 
events,key,life cycle-abstract window tool kit,abstract class
events,key,life cycle-abstract window tool kit,abstract classevents,key,life cycle-abstract window tool kit,abstract class
events,key,life cycle-abstract window tool kit,abstract class
 
AWT.pptx
AWT.pptxAWT.pptx
AWT.pptx
 
object oriented programming examples
object oriented programming examplesobject oriented programming examples
object oriented programming examples
 
Gui programming (awt)
Gui programming (awt)Gui programming (awt)
Gui programming (awt)
 
GUI.pdf
GUI.pdfGUI.pdf
GUI.pdf
 
17625-1.pptx
17625-1.pptx17625-1.pptx
17625-1.pptx
 
Python Graphical User Interface and design
Python Graphical User Interface and designPython Graphical User Interface and design
Python Graphical User Interface and design
 
Chapter iii(building a simple user interface)
Chapter iii(building a simple user interface)Chapter iii(building a simple user interface)
Chapter iii(building a simple user interface)
 
Abstract Window Toolkit
Abstract Window ToolkitAbstract Window Toolkit
Abstract Window Toolkit
 
Java awt (abstract window toolkit)
Java awt (abstract window toolkit)Java awt (abstract window toolkit)
Java awt (abstract window toolkit)
 
Unit-1 awt advanced java programming
Unit-1 awt advanced java programmingUnit-1 awt advanced java programming
Unit-1 awt advanced java programming
 
UNIT-2-AJAVA.pdf
UNIT-2-AJAVA.pdfUNIT-2-AJAVA.pdf
UNIT-2-AJAVA.pdf
 
Gui programming
Gui programmingGui programming
Gui programming
 
Chap 1 - Introduction GUI.pptx
Chap 1 - Introduction GUI.pptxChap 1 - Introduction GUI.pptx
Chap 1 - Introduction GUI.pptx
 
Windows Programming with AWT
Windows Programming with AWTWindows Programming with AWT
Windows Programming with AWT
 
Unit 5 java-awt (1)
Unit 5 java-awt (1)Unit 5 java-awt (1)
Unit 5 java-awt (1)
 

More from teach4uin

Controls
ControlsControls
Controls
teach4uin
 
validation
validationvalidation
validation
teach4uin
 
validation
validationvalidation
validation
teach4uin
 
Master pages
Master pagesMaster pages
Master pages
teach4uin
 
.Net framework
.Net framework.Net framework
.Net framework
teach4uin
 
Scripting languages
Scripting languagesScripting languages
Scripting languages
teach4uin
 
Css1
Css1Css1
Css1
teach4uin
 
Code model
Code modelCode model
Code model
teach4uin
 
Asp db
Asp dbAsp db
Asp db
teach4uin
 
State management
State managementState management
State management
teach4uin
 
security configuration
security configurationsecurity configuration
security configuration
teach4uin
 
static dynamic html tags
 static dynamic html tags static dynamic html tags
static dynamic html tags
teach4uin
 
static dynamic html tags
static dynamic html tagsstatic dynamic html tags
static dynamic html tags
teach4uin
 
New microsoft office power point presentation
New microsoft office power point presentationNew microsoft office power point presentation
New microsoft office power point presentation
teach4uin
 
.Net overview
.Net overview.Net overview
.Net overview
teach4uin
 
Stdlib functions lesson
Stdlib functions lessonStdlib functions lesson
Stdlib functions lesson
teach4uin
 
enums
enumsenums
enums
teach4uin
 
memory
memorymemory
memory
teach4uin
 
array
arrayarray
array
teach4uin
 
storage clas
storage classtorage clas
storage clas
teach4uin
 

More from teach4uin (20)

Controls
ControlsControls
Controls
 
validation
validationvalidation
validation
 
validation
validationvalidation
validation
 
Master pages
Master pagesMaster pages
Master pages
 
.Net framework
.Net framework.Net framework
.Net framework
 
Scripting languages
Scripting languagesScripting languages
Scripting languages
 
Css1
Css1Css1
Css1
 
Code model
Code modelCode model
Code model
 
Asp db
Asp dbAsp db
Asp db
 
State management
State managementState management
State management
 
security configuration
security configurationsecurity configuration
security configuration
 
static dynamic html tags
 static dynamic html tags static dynamic html tags
static dynamic html tags
 
static dynamic html tags
static dynamic html tagsstatic dynamic html tags
static dynamic html tags
 
New microsoft office power point presentation
New microsoft office power point presentationNew microsoft office power point presentation
New microsoft office power point presentation
 
.Net overview
.Net overview.Net overview
.Net overview
 
Stdlib functions lesson
Stdlib functions lessonStdlib functions lesson
Stdlib functions lesson
 
enums
enumsenums
enums
 
memory
memorymemory
memory
 
array
arrayarray
array
 
storage clas
storage classtorage clas
storage clas
 

Recently uploaded

(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
Priyanka Aash
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
Tatiana Al-Chueyr
 
Tailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer InsightsTailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer Insights
SynapseIndia
 
Sonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdfSonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdf
SubhamMandal40
 
What's new in android: jetpack compose 2024
What's new in android: jetpack compose 2024What's new in android: jetpack compose 2024
What's new in android: jetpack compose 2024
Toru Wonyoung Choi
 
(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...
(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...
(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...
Priyanka Aash
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc
 
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
sunilverma7884
 
Computer HARDWARE presenattion by CWD students class 10
Computer HARDWARE presenattion by CWD students class 10Computer HARDWARE presenattion by CWD students class 10
Computer HARDWARE presenattion by CWD students class 10
ankush9927
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
Adam Dunkels
 
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptxDublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Kunal Gupta
 
Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024
Nicolás Lopéz
 
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
Priyanka Aash
 
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
bhumivarma35300
 
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision MakingConnector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
DianaGray10
 
(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf
(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf
(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf
Priyanka Aash
 
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
alexjohnson7307
 
Data Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining DataData Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining Data
Safe Software
 
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and DisadvantagesBLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
SAI KAILASH R
 
Opencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of MünsterOpencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of Münster
Matthias Neugebauer
 

Recently uploaded (20)

(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
(CISOPlatform Summit & SACON 2024) Keynote _ Power Digital Identities With AI...
 
Best Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdfBest Practices for Effectively Running dbt in Airflow.pdf
Best Practices for Effectively Running dbt in Airflow.pdf
 
Tailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer InsightsTailored CRM Software Development for Enhanced Customer Insights
Tailored CRM Software Development for Enhanced Customer Insights
 
Sonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdfSonkoloniya documentation - ONEprojukti.pdf
Sonkoloniya documentation - ONEprojukti.pdf
 
What's new in android: jetpack compose 2024
What's new in android: jetpack compose 2024What's new in android: jetpack compose 2024
What's new in android: jetpack compose 2024
 
(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...
(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...
(CISOPlatform Summit & SACON 2024) Orientation by CISO Platform_ Using CISO P...
 
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-InTrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
TrustArc Webinar - 2024 Data Privacy Trends: A Mid-Year Check-In
 
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
Girls call Kolkata 👀 XXXXXXXXXXX 👀 Rs.9.5 K Cash Payment With Room Delivery
 
Computer HARDWARE presenattion by CWD students class 10
Computer HARDWARE presenattion by CWD students class 10Computer HARDWARE presenattion by CWD students class 10
Computer HARDWARE presenattion by CWD students class 10
 
How to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptxHow to Build a Profitable IoT Product.pptx
How to Build a Profitable IoT Product.pptx
 
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptxDublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
Dublin_mulesoft_meetup_Mulesoft_Salesforce_Integration (1).pptx
 
Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024Vertex AI Agent Builder - GDG Alicante - Julio 2024
Vertex AI Agent Builder - GDG Alicante - Julio 2024
 
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
(CISOPlatform Summit & SACON 2024) Digital Personal Data Protection Act.pdf
 
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
High Profile Girls call Service Pune 000XX00000 Provide Best And Top Girl Ser...
 
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision MakingConnector Corner: Leveraging Snowflake Integration for Smarter Decision Making
Connector Corner: Leveraging Snowflake Integration for Smarter Decision Making
 
(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf
(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf
(CISOPlatform Summit & SACON 2024) Gen AI & Deepfake In Overall Security.pdf
 
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
leewayhertz.com-AI agents for healthcare Applications benefits and implementa...
 
Data Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining DataData Integration Basics: Merging & Joining Data
Data Integration Basics: Merging & Joining Data
 
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and DisadvantagesBLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
BLOCKCHAIN TECHNOLOGY - Advantages and Disadvantages
 
Opencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of MünsterOpencast Summit 2024 — Opencast @ University of Münster
Opencast Summit 2024 — Opencast @ University of Münster
 

tL19 awt

  • 1. Programming in JAVA Topic: GUI Basics (AWT)
  • 2. Introduction • AWT is a java API that is used to develop GUI applications in Java. • API is a collection of classes and interfaces that provide the basic infrastructure or core functionalities for developing specific type of application. • There are three types of GUI classes: 1) Container classes 2) Component classes 3) Helper classes
  • 3. Component Classes • An instance of Component can be displayed on the screen. • Component is the root class of all the user-interface classes including container classes, and JComponent is the root class of all the lightweight Swing components. • Button, Label, TextField etc.
  • 4. Container Classes • An instance of Container can hold instances of Component. • Container classes are GUI components that are used to contain other GUI components. • Window, Panel, Applet, Frame, and Dialog are the container classes for AWT components.
  • 5. Helper Classes • The helper classes, such as Graphics, Color, Font, FontMetrics, Dimension, and LayoutManager, are not subclasses of Component. • They are used to describe the properties of GUI components, such as graphics context, colors, fonts, and dimension etc.
  • 6. AWT Classes Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India) Class Description AWTEvent Encapsulates AWT events Button Creates a push button control Canvas A blank, semantics-free window Checkbox Creates a check box control CheckboxGroup Creates a group of check box controls Color Manages colors in a portable, platform-independent fashion Font Encapsulates a type font Frame Creates a standard window that has a title bar, resize corners, and a menu bar Graphics Encapsulates the graphics context. This context is used by the various output methods to display output in a window.
  • 7. AWT classes Ravi Kant Sahu, Asst. Professor @ Lovely Professional University, Punjab (India) Class Description TextField Creates a single-line edit control TextArea Creates a multiline edit control Window Creates a window with no frame, no menu bar, and no title Scrollbar Creates a scroll bar control MenuItem Creates a menu item Menu Creates a pull-down menu MenuBar Creates a menu bar MenuShortcut Encapsulates a keyboard shortcut for a menu item ScrollPane A container that provides horizontal and/or vertical scroll bars for another component
  • 8. Component Class Hierarchy of AWT Component Container (Non-Container) Window Panel Frame Applet Button Label Text Field Check-Box Text Area etc.
  • 9. • Component is an abstract class that describes the basic functionality supported by all AWT components. • Container is a sub-class of Component that adds the functionality of containership to a component. • A Container component can contain another container or non- container components. • Window and Panel are two non-abstract sub-classes of Container.
  • 10. Component Cont… • Panel represents a rectangular region that does not have a border and title bar. • Window is a Panel with border and title bar. • Window can independently exist whereas panel can’t. • Frame is a sub-class of Window . • Button, Label, TextField, CheckBox etc. are non-container components.
  • 11. Component • Component is an abstract class that encapsulates all of the attributes of a visual component. • All user interface elements that are displayed on the screen and that interact with the user are subclasses of Component. • It defines over a hundred public methods that are responsible for managing events, such as mouse and keyboard input, positioning and sizing the window, and repainting. • A Component object is responsible for remembering the current foreground and background colors and the currently selected text font.
  • 12. Commonly Used Methods of Component Class • setBackground(): used to change the background color of a component. public void setBackground ( Color c) Note: color is a helper class. • setForeground(): used to change the foreground color of a component. public void setForeground ( Font obj) • Font is represented by java.awt.Font. public Font (String FontName, int Style, int Size) e.g. : Font f = (“Times New Roman”, Font.BOLD, 20);
  • 13. • setBounds(): used to specify size and position of component in a container. public void setBounds (int left, int top, int width, int height)
  • 14. Container • Container class is a subclass of Component. • It has additional methods that allow other Component objects to be nested within it. • Other Container objects can be stored inside of a Container (since they are themselves instances of Component). • This makes for a multileveled containment system. • A container is responsible for laying out (that is, positioning) any components that it contains. It does this through the use of various layout managers.
  • 15. Commonly used methods of Container Class • add(): used to add components to a container. public void add (Component c) • setSize(): used to specify the size of a container. public void setSize(int width, int height) • setLayout(): used to specify the layout manager for a container. public void setLayout (LayoutManager mgr) • setVisible(boolean visibility): used to set the visibility of container. public void setVisible (boolean visibility)
  • 16. Panel • Panel is a window that does not contain a title bar, menu bar, or border. • The screen output of an applet is drawn on the surface of a Panel object. But it is not visible when applet is run inside a browser. • When we run an applet using an applet viewer, the applet viewer provides the title and border. • Other components can be added to a Panel object by its add( ) method (inherited from Container). • We can position and resize the components of a panel manually using the setLocation( ), setSize( ), setPreferredSize( ), or setBounds( ) methods defined by Component.
  • 17. Window • Window class creates a top-level window. • A top-level window is not contained within any other object; it sits directly on the desktop. • Generally, we won’t create Window objects directly. Instead, we use a subclass of Window called Frame.
  • 18. Frame • It is a subclass of Window and has a title bar, menu bar, borders, and resizing corners. • Frame encapsulates what is commonly thought of as a “window.”
  • 19. Frame Constructor: public Frame () public Frame (String Title) Methods: public String getTitle () public void setTitle (String Title) public void setVisibile(boolean Visibility)
  • 20. Label • Used to describe other components or to display information on a container. Constructors: public Label() public Label (String s) Methods: • public String getText(): used to display the text on a Label. • public void setText(): used to change the text.
  • 21. Button • Buttons are used to initiate action. Constructor: public Button () public Button (String Name) Methods: public String getLabel() public void setLabel(String Name)
  • 22. TextField • Used to receive input and display the output/result. Constructor: public TextField () public TextField (String Text) public TextField (int No_of Chars) Methods: public String getText () public void setText (String Text) public void setEchoChar ( char x) public void setEditable (boolean editability) public boolean isEditable()
  • 23. TextArea • Used to display multiple lines of output/result. Constructor: public TextArea() public TextArea (String Text) public TextArea (int numLines, int numChars) public TextArea (String str, int numLines, int numChars, int sBars) sBars Constants: (SCROLLBARS_NONE, SCROLLBARS_BOTH, SCROLLBARS_HORIZONTAL_ONLY, SCROLLBARS_VERTICAL_ONLY) Methods: Supports all the methods of TextArea. void append(String str) void insert(String str, int index) void replaceRange(String str, int startIndex, int endIndex)
  • 24. Checkbox and RadioButtons • Checkbox and CheckboxGroup classes are used to create RadioButtons. public Checkbox (String Text) public Checkbox (String Text, Boolean State) public Checkbox (String Text, Boolean State, CheckboxGroup cbg ) public Checkbox (String Text, CheckboxGroup cbg, Boolean State, )
  • 25. Methods • boolean getState( ) • void setState(boolean on) • String getLabel( ) • void setLabel(String str)
  • 26. CheckboxGroup • Used to create a set of mutually exclusive check boxes in which one and only one check box in the group can be checked at a time. Constructor: public CheckboxGroup() Methods: Checkbox getSelectedCheckbox( ) void setSelectedCheckbox(Checkbox which)
  • 27. Menu Bars and Menus • Menu is implemented in AWT by the following classes: MenuBar, Menu, and MenuItem. • A menu bar displays a list of top-level menu choices. Each choice is associated with a drop-down menu. • A menu bar contains one or more Menu objects. Each Menu object contains a list of MenuItem objects. • Each MenuItem object represents something that can be selected by the user. • Since Menu is a subclass of MenuItem, a hierarchy of nested submenus can be created. • Checkable menu items are menu options of type CheckboxMenuItem and will have a check mark next to them when they are selected.
  • 28. Creating Menus • To create a menu bar, first create an instance of MenuBar. This class only defines the default constructor. • Next, create instances of Menu that will define the selections displayed on the bar. Following are the constructors for Menu: Menu( ) throws HeadlessException Menu(String optionName) throws HeadlessException • Individual menu items are of type MenuItem. It defines these constructors: MenuItem( ) throws HeadlessException MenuItem(String itemName) throws HeadlessException MenuItem(String itemName, MenuShortcut keyAccel) throws HeadlessException
  • 29. • We can disable or enable a menu item by using the setEnabled( ) method. void setEnabled (boolean enabledFlag) • If the argument enabledFlag is true, the menu item is enabled. If false, the menu item is disabled. • We can determine an item’s status by calling isEnabled( ). boolean isEnabled( ) • isEnabled( ) returns true if the menu item on which it is called is enabled. Otherwise, it returns false. • We can change the name of a menu item by calling setLabel( ). We can retrieve the current name by using getLabel( ). void setLabel(String newName) String getLabel( )
  • 30. CheckboxMenuItem • We can create a checkable menu item by using a subclass of MenuItem called CheckboxMenuItem. CheckboxMenuItem( ) throws HeadlessException CheckboxMenuItem(String itemName) throws HeadlessException CheckboxMenuItem(String itemName, boolean on) throws HeadlessException • We can obtain the status of a checkable item by calling getState( ). You can set it to a known state by using setState( ). boolean getState( ) void setState(boolean checked) Note: HeadlessException is Thrown when code that is dependent on a keyboard, display, or mouse is called in an environment that does not support a keyboard, display, or mouse.
  • 31. Choice • The Choice class presents a pop-up menu of choices. • The current choice is displayed as the title of the menu. Choice c = new Choice(); // Only default constructor available c.add(“B. Tech.”); c.add(“BCA”); c.add(“B. Arch.”); Methods: String getItem(int index) int getItemCount() String getSelectedItem() int getSelectedIndex()
  • 32. List • The List class provides a compact, multiple-choice, scrolling selection list. Constructors: List( ) List(int numRows) List(int numRows, boolean multipleSelect) Methods: void add(String name) void add(String name, int index) String getSelectedItem() String[] getSelectedItems() int getSelectedIndex() int[] getSelectedIndexes()
  • 33. Layout Manager classes LayoutManager class Description BorderLayout The border layout manager. Border layouts use five components: North, South, East, West, and Center CardLayout The card layout manager. Card layouts emulate index cards. Only the one on top is showing. GridLayout The grid layout manager. Grid layout displays components in a two-dimensional grid. FlowLayout The flow layout manager. Flow layout positions components left to right, top to bottom.
  • 34. FlowLayout • Arranges the components in left to right, top to bottom fashion. • It is the default layout manager for Panel. public FlowLayout () public FlowLayout (int alignment) public FlowLayout (int alignment, int H_Gap, int V_Gap) • Alignments are specified as: FlowLayout.LEFT FlowLayout.RIGHT FlowLayout.CENTER • By default 5 pixels is used as horizontal and vertical gap between components. FlowLayout fl = new FlowLayout (FlowLayout.CENTER, 30, 20); frm.setLayout(fl);
  • 35. GridLayout • It divides a container into a grid of specified rows and columns. Each to display one component. • Size of component is changed according to the size of the cell. public GridLayout (int row, int column) public GridLayout (int row, int column, int H_Gap, int V_Gap) GridLayout gl = new GridLayout (3, 4); frm.setLayout (gl); GridLayout gl1 = new GridLayout (3, 4, 20, 30); frm.setLayout (gl2);
  • 36. BorderLayout • It divides the container into 5 regions ( NORTH, SOUTH, EAST, WEST and CENTER). • It is the default layout manager for Window. public BorderLayout() • To add a component at a specific region, following method is used: public void add ( Component c, int Region) Example: Button btn = new Button(“OK”); frm.add( btn, BorderLayout.EAST);
  • 37. CardLayout • It is used to arrange containers in the form of deck of cards. Methods: first() / last()/ next()/ previous(): is used to make the first/ last/ next/ previous card visible. show(): is used to make a specified card visible. public void show ( Container deck, String CardName) • To give a name to the container while it is added to the deck: public void add ( Container card, String CardName)
  • 38. Steps to Create a Frame-based Interface 1) Create a Frame object. 2) Create Component Objects. 3) Add the Component objects to Frame. 4) Set the size of the Frame and make it visible.
  • 39. My First Application import java.awt.*; class MyFirstApp { static TextField t1,t2,t3; static Button b1; public static void main(String arr[]) { Frame f = new Frame ("My Calculator"); Label l1 = new Label (“1st Number"); Label l2 = new Label (“2nd Number"); Label l3 = new Label ("Result"); t1 = new TextField(20); t2 = new TextField(20); t3 = new TextField(20); t3.setEditable(false); b1 = new Button("Add"); f.setLayout(new FlowLayout()); f.add(l1); f.add(t1); f.add(l2); f.add(t2); f.add(l3); f.add(t3); f.add(b1); f.setSize(200,250); f.setVisible(true); } }