Java Swing

32
Written by Shraddha Sheth Neel Shah

Transcript of Java Swing

Page 1: Java Swing

Written byShraddha Sheth

Neel Shah

Page 2: Java Swing

o Creating Windows o Creating a Window o Components and Containers o Basics of Components o Using Containers o Containers Layout Managers o Adding a Menu to a Window o Applets

Page 3: Java Swing

JFC – JavaTM Foundation Classes

Encompass a group of features for constructing graphical user interfaces (GUI).

Implemented without any native code.“Swing” is the codename of the project that developed the

first JFC components (JFC 1.11).The name “Swing” is frequently used to refer to new

components and related API.

Page 4: Java Swing

JFC includes:The Swing Components

Dialog, Tabbed pane, Buttons, File Chooser, ...Pluggable Look and FeelAccessibility API

Screen readers, Braille displays, ...Java 2DTM API (Java 2 Platform only)Drag and Drop (Java 2 Platform only)

Between Java applications and native applications.

Page 5: Java Swing

Each picture shows the same program but with a different look and feel

javax.swing.plaf.metal.MetalLookAndFeel

javax.swing.plaf.motif.MotifLookAndFeel

Javax.swing.plaf.windows.WindowsLookAndFeel

Page 6: Java Swing

import javax.swing.UIManager;

static setLookAndFeel() method that is defined in the UIManager class.

This method can throw an exception of ClassNotFoundException if the look-and-feel class cannot be found,

For example: try {

UIManager.setLookAndFeel(“com.sun.java.swing.plaf.motif.MotifLookAndFeel”);

} catch(Exception e) { System.err.println(“Look and feel not set.”);

}

Page 7: Java Swing

UIManager.LookAndFeelInfo[] looks = UIManager.getInstalledLookAndFeels();

for( UIManager.LookAndFeelInfo look : looks) System.out.println(look.getClassName());

Java Default Look And FeelUIManager.setLookAndFeel

( UIManager.getCrossPlatformLookAndFeel());

Page 8: Java Swing

Swing provides many standard GUI components such as buttons, lists, menus, and text areas, which you combine to create your program's GUI.

Swing provides containers such as a window.top level: frames, dialogsintermediate level: panel, scroll pane, tabbed pane, ...

View Components

Page 9: Java Swing

Descendents of the java.awt.Container classComponents that can contain other components.Use a layout manager to position and size the

components contained in them.Components are added to a container using one

of the various forms of its add methodDepending on which layout manager is used by the

containerpanel.add(component);

Page 10: Java Swing
Page 11: Java Swing

Every program that presents a Swing GUI contains at least one top-level container.

A Top level container provides the support that Swing components need to perform their painting and event-handling.

Swing provides four top-level containers:JFrame (Main window)JDialog (Base For Dialogs)JApplet (An applet display area within a browser

window)JWindow (Secondary Display Devices)

Page 12: Java Swing
Page 13: Java Swing

To appear on screen, every GUI component must be part of a containment hierarchy, with a top-level container as its root.

Each top-level container has a content pane that contains visible components in that top-level container’s GUI.

A top-level container can not contain another top level container.

Page 14: Java Swing
Page 15: Java Swing

A frame implemented as an instance of the JFrame class, is a window that has decorations such as a border, a title and buttons for closing and iconifying the window.

Applications with a GUI typically use at least one frame.

Page 16: Java Swing
Page 17: Java Swing

import javax.swing.*;

public class HelloWorldSwing {

public static void main(String[] args) {

JFrame frame = new JFrame("HelloWorldSwing");

final JLabel label = new JLabel("Hello World");

frame.getContentPane().add(label); // 1.4

// OR USE THIS frame.add(label); JDK 5

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setVisible(true);

}

}

Page 18: Java Swing
Page 19: Java Swing
Page 20: Java Swing
Page 21: Java Swing

Position (x,y)Name .setName() .getName();SizeForeground And Background ColorFontCursorState (setEnabled ([True/False])) isEnable()Visible (setVisible([True/False])) isVisible()Valid isValid()

Page 22: Java Swing

Position is defined by x and y coordinates of type int, or by an object of type java.awt.Point.

Size is defined by width and height, also values of type int, or by an object of type java.awt.Dimension.

A Rectangle specifies an area in a coordinate space that is enclosed by the Rectangle object's upper-left point (x,y) in the coordinate space, its width, and its height.

Page 23: Java Swing
Page 24: Java Swing
Page 25: Java Swing
Page 26: Java Swing
Page 27: Java Swing
Page 28: Java Swing
Page 29: Java Swing
Page 30: Java Swing
Page 31: Java Swing
Page 32: Java Swing

The decorations on a frame are platform dependent.A JApplet object has the same arrangement of panes

as a JFrame object.Window class and its subclasses, as objects of type

Window (or of a subclass type) can’t be contained in another container.