| Overview of Applets

## Methods for Drawing and Event Handling

> The `Simple` applet defines its onscreen appearance by overriding the `paint` method:

> >     class Simple extends Applet {
> >         . . .
> >         public void paint(Graphics g) { . . . }
> >         . . .
> >     }

> The `paint` method is one of two display methods an applet can override:

> `paint`
>   The basic display method. Many applets implement the `paint` method to draw the applet's representation within a browser page.
> `update`
>   A method you can use along with `paint` to improve drawing performance.

> Applets inherit their `paint` and `update` methods from the `Applet` class, which inherits them from the Abstract Window Toolkit (AWT) `Component` class. For an overview of the `Component` class, and the AWT in general, see the Overview of the Java UI lesson. Within the overview, the architecture of the AWT drawing system is discussed on the Drawing page.

> Applets inherit a group of event-handling methods from the `Component` class. (The architecture of the AWT event system is discussed on the Events page.) The `Component` class defines several methods, such as `action` and `mouseDown`, for handling particular types of events, and then one catch-all method called `handleEvent`.

> To react to an event, an applet must override either the appropriate event-specific method or the `handleEvent` method. For example, adding the following code to the `Simple` applet makes it respond to mouse clicks.

> >     import java.awt.Event;
> >     . . .
> >     public boolean mouseDown(Event event, int x, int y) {
> >         addItem("click!... ");
> >         return true;
> >     }

> Below is the resulting applet. When you click within its rectangle, it displays the word "click!...".

> > You can't run applets. Here's what you'd see if you could:

| Overview of Applets