AWT information


Published on

Unit Nexus is providing training in Java

Published in: Education, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

AWT information

  1. 1. Abstract Windowing Toolkit Session 3
  2. 2. Abstract Windowing Toolkit / 2 of 29 Objectives  Discuss Containers and Components  Frame  Panel  Label  TextFields and TextAreas  Checkboxes and RadioButtons  Choice  Identify events generated by components  Create a standalone AWT application  Describe Abstract Windowing Toolkit (AWT)
  3. 3. Abstract Windowing Toolkit / 3 of 29 Introduction  These make the language richer in terms of creating graphical objects that can be controlled by the developer as well as the user.  One of the most important outcomes of this is that languages have happened to be GUI based.  In this session we discuss how Java supports GUI features and how they are implemented.  As on date, software applications have become user- friendlier because of introducing graphics in user interfaces
  4. 4. Abstract Windowing Toolkit / 4 of 29 Abstract Windowing Toolkit  Abstract Windowing Toolkit (AWT) is a set of Java classes that allow us to create a GUI  AWT provides items which enable creation of an attractive and efficient GUI  Graphical User Interface (GUI) is used to accept input through a keyboard or a mouse
  5. 5. Abstract Windowing Toolkit / 5 of 29 Containers  It can be drawn or painted  Container class in the java.awt package directly or indirectly derives two commonly used containers – Frame and Panel  Frame is a separate window and has borders  Panel is an area without borders and is contained within a window  An area that can hold elements
  6. 6. Abstract Windowing Toolkit / 6 of 29 Containers - Frame  Can be a component or a container  Can be created using constructors  Some of these constructors are:  Frame()  Creates a Frame which is invisible  Frame(String Title)  Creates an invisible Frame with given title  A window that is independent of an applet and of the browser
  7. 7. Abstract Windowing Toolkit / 7 of 29 Example Output
  8. 8. Abstract Windowing Toolkit / 8 of 29 Containers - Panel  Simplest way to create a panel is through its constructor Panel( )  A panel has to be added to a frame  The frame will be visible only when the two methods – setSize( ) and setVisible( ) are set  Used to group a number of components together
  9. 9. Abstract Windowing Toolkit / 9 of 29 Example Output
  10. 10. Abstract Windowing Toolkit / 10 of 29 Component  Examples include textfields, labels, checkboxes, textareas etc.  Some advanced components include scrollbars, scrollpanes and dialogs  Anything that can be placed on a user interface and can be made visible or resized
  11. 11. Abstract Windowing Toolkit / 11 of 29 Hierarchy of classes in Java Component Button Checkbox Container Choice Canvas TextComponent Label Panel Window Applet Frame Dialog TextArea TextField
  12. 12. Abstract Windowing Toolkit / 12 of 29 Various components Label Text field Checkbox Radio button Button Text Area
  13. 13. Abstract Windowing Toolkit / 13 of 29 Label  Not user-editable  Can be created using one of the following constructors:  Label( ) Creates an empty label  Label(String labeltext) Creates a label with a given text  Label(String labeltext, int alignment) Creates a label with given alignment where alignment can be Label.LEFT, Label.RIGHT or Label.CENTER  Generally used to indicate the purpose of an item
  14. 14. Abstract Windowing Toolkit / 14 of 29 Textfield  Generally accepts one line of input  Can be created using one of the following constructors:  Textfield() Creates a new textfield  Textfield(int columns) Creates a new textfield with given number of columns  Textfield(String s) Creates a new textfield with the given string  Textfield(String s, int columns) Creates a new textfield with given string and given number of columns  GUI element used to input text
  15. 15. Abstract Windowing Toolkit / 15 of 29 Example Output
  16. 16. Abstract Windowing Toolkit / 16 of 29 TextArea  Includes a scrollbar  TextArea can be created using some of the following constructors given below:  TextArea( ) Creates a new TextArea  TextArea(int rows, int cols) Creates a new TextArea with given number of rows and columns  TextArea(String text, int rows, int cols) Creates a new TextArea with given string, given number of rows and columns  Used when text is to be accepted has two or more lines
  17. 17. Abstract Windowing Toolkit / 17 of 29 Example Output
  18. 18. Abstract Windowing Toolkit / 18 of 29 Button  The easiest way to trap user action  Can create buttons in Java using any of the following constructors  Button() Creates a new Button.  Button(String text) Creates a new Button with the given String  Part of GUI
  19. 19. Abstract Windowing Toolkit / 19 of 29 Example Output
  20. 20. Abstract Windowing Toolkit / 20 of 29 Checkbox  Checkboxes in Java can be created using constructors.  Some of these constructors are:  Checkbox() Creates an empty textbox  Checkbox(String text) Creates a checkbox with given string as label  Used for multi-option user input that the user may select or deselect by clicking them.
  21. 21. Abstract Windowing Toolkit / 21 of 29 Example Output
  22. 22. Abstract Windowing Toolkit / 22 of 29 Radiobuttons  Only one button in a radiobutton group can be selected.  First create a CheckboxGroup object  CheckboxGroup cg=new CheckboxGroup();  Then create each of the radio buttons  Checkbox male=Checkbox(“male”,cg,true);  Checkbox female=Checkbox(“female”,cg,false);  Used as option button to specify choices.
  23. 23. Abstract Windowing Toolkit / 23 of 29 Example Output
  24. 24. Abstract Windowing Toolkit / 24 of 29 Lists  User may select one or more items  Created using a number of strings or text values  Choice class enables us to create multiple item lists  Choice moviestars=new Choice();  Add items using the addItem() method  moviestars.addItem(“Antonio Banderas”);  moviestars.addItem(“Leonardo Dicaprio”);  Displays a list of choices to the user
  25. 25. Abstract Windowing Toolkit / 25 of 29 Example Output
  26. 26. Abstract Windowing Toolkit / 26 of 29 Event handling with components (1)  Event Delegation Model is used to handle events  This process allows the program to register handlers called ‘listeners’ with objects whose events need to be captured  Handlers are automatically called when an event takes place  An event is generated whenever a user clicks a mouse, presses or releases a key
  27. 27. Abstract Windowing Toolkit / 27 of 29 Event handling with components (2)  Steps to be followed –  Associate the class with the appropriate listener interface  Identify all components that generate events  Identify all events to be handled  Implement the methods of the listener and write the event handling code within the methods  Event listeners are implemented as interfaces in Java
  28. 28. Abstract Windowing Toolkit / 28 of 29 Event handling with components (3) Event Class Description Interface ActionEvent Button is pressed, list item is double clicked or a menu is selected ActionListener AdjustmentEvent When scrollbar is used AdjustmentListener ComponentEvent Component is resized, moved, hidden or made visible ComponentListener FocusEvent Component gains or loses keyboard focus FocusListener
  29. 29. Abstract Windowing Toolkit / 29 of 29 Event handling with components (4) Event Class Description Interface ItemEvent When a menu item is selected or deselected or when a checkbox or list item is clicked ItemListener WindowEvent Window is activated, closed, opened or quit WindowListener TextEvent Value of a text field or text area is changed TextListener MouseEvent Mouse is moved, clicked, dragged or released MouseListener Mouse MotionListener KeyEvent Input is received from the keyboard KeyListener
  30. 30. Want to contact Unit Nexus  Unit Nexus Zirakpur Official Website  Like Unit Nexus Pvt. Ltd. On Facebook  Add Unit Nexus to your professional Network on Linked In  Company Profile of Unit Nexus Java Language Fundamentals / 30 of 28