Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## javax.swing
Class JApplet

    java.lang.Object
      |
      +--java.awt.Component
            |
            +--java.awt.Container
                  |
                  +--java.awt.Panel
                        |
                        +--java.applet.Applet
                              |
                              +--javax.swing.JApplet

public class JApplet
extends java.applet.Applet
implements Accessible, RootPaneContainer

An extended version of java.applet.Applet that adds support for interposing input and painting behavior in front of the applets children (see glassPane), support for special children that are managed by a LayeredPane (see rootPane) and for Swing MenuBars.

The JApplet class is slightly incompatible with java.applet.Applet. JApplet contains a JRootPane as it's only child. The contentPane should be the parent of any children of the JApplet. This is different than java.applet.Applet, e.g. to add a child to an an java.applet.Applet you'd write:

           applet.add(child);

However using JApplet you need to add the child to the JApplet's contentPane instead:

           applet.getContentPane().add(child);

The same is true for setting LayoutManagers, removing components, listing children, etc. All these methods should normally be sent to the contentPane() instead of the JApplet itself. The contentPane() will always be non-null. Attempting to set it to null will cause the JApplet to throw an exception. The default contentPane() will have a BorderLayout manager set on it.

Please see the JRootPane documentation for a complete description of the contentPane, glassPane, and layeredPane properties.

For the keyboard keys used by this component in the standard Look and Feel (L&F) renditions, see the JApplet key assignments.

Both Netscape Communicator and Internet Explorer 4.0 unconditionally print an error message to the Java console when an applet attempts to access the AWT system event queue. Swing applets do this once, to check if access is permitted. To prevent the warning message in a production applet one can set a client property called "defeatSystemEventQueueCheck" on the JApplets RootPane to any non null value, e.g:

     JRootPane rp = myJApplet.getRootPane();
     rp.putClientProperty("defeatSystemEventQueueCheck", Boolean.TRUE);

We hope that future versions of the browsers will not have this limitation and we'll be able to retire this hack.

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. A future release of Swing will provide support for long term persistence.

See Also:
  Serialized Form

Inner Class Summary
`protected class` | `JApplet.AccessibleJApplet`

Field Summary
`protected AccessibleContext` | `accessibleContext`
`protected JRootPane` | `rootPane`
`protected boolean` | `rootPaneCheckingEnabled`

Fields inherited from class java.awt.Component
`BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT`

Constructor Summary
`JApplet()` Creates a swing applet instance.

Method Summary
`protected void` | `addImpl(java.awt.Component comp, java.lang.Object constraints, int index)` By default, children may not be added directly to a this component, they must be added to its contentPane instead.
`protected JRootPane` | `createRootPane()` Called by the constructor methods to create the default rootPane.
`AccessibleContext` | `getAccessibleContext()` Get the AccessibleContext associated with this JApplet
`java.awt.Container` | `getContentPane()` Returns the contentPane object for this applet.
`java.awt.Component` | `getGlassPane()` Returns the glassPane object for this applet.
`JMenuBar` | `getJMenuBar()` Returns the menubar set on this applet.
`JLayeredPane` | `getLayeredPane()` Returns the layeredPane object for this applet.
`JRootPane` | `getRootPane()` Returns the rootPane object for this applet.
`protected boolean` | `isRootPaneCheckingEnabled()`
`protected java.lang.String` | `paramString()` Returns a string representation of this JApplet.
`protected void` | `processKeyEvent(java.awt.event.KeyEvent e)`
`void` | `setContentPane(java.awt.Container contentPane)` Sets the contentPane property.
`void` | `setGlassPane(java.awt.Component glassPane)` Sets the glassPane property.
`void` | `setJMenuBar(JMenuBar menuBar)` Sets the menubar for this applet.
`void` | `setLayeredPane(JLayeredPane layeredPane)` Sets the layeredPane property.
`void` | `setLayout(java.awt.LayoutManager manager)` By default the layout of this component may not be set, the layout of its contentPane should be set instead.
`protected void` | `setRootPane(JRootPane root)` Sets the rootPane property.
`protected void` | `setRootPaneCheckingEnabled(boolean enabled)` If true then calls to add() and setLayout() will cause an exception to be thrown.
`void` | `update(java.awt.Graphics g)` Just calls `paint(g)`.

Methods inherited from class java.applet.Applet
`destroy, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, init, isActive, play, play, resize, resize, setStub, showStatus, start, stop`

Methods inherited from class java.awt.Panel
`addNotify`

Methods inherited from class java.awt.Container
`add, add, add, add, add, addContainerListener, countComponents, deliverEvent, doLayout, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getInsets, getLayout, getMaximumSize, getMinimumSize, getPreferredSize, insets, invalidate, isAncestorOf, layout, list, list, locate, minimumSize, paint, paintComponents, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, validate, validateTree`

Methods inherited from class java.awt.Component
`action, add, addComponentListener, addFocusListener, addKeyListener, addMouseListener, addMouseMotionListener, bounds, checkImage, checkImage, contains, contains, createImage, createImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, getBackground, getBounds, getColorModel, getCursor, getFont, getFontMetrics, getForeground, getGraphics, getLocation, getLocationOnScreen, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hide, imageUpdate, inside, isEnabled, isFocusTraversable, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processMouseEvent, processMouseMotionEvent, remove, removeComponentListener, removeFocusListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, repaint, repaint, repaint, repaint, requestFocus, reshape, setBackground, setBounds, setBounds, setCursor, setEnabled, setFont, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### rootPane

    protected JRootPane rootPane

  See Also:
    `getRootPane()`, `setRootPane(javax.swing.JRootPane)`

### rootPaneCheckingEnabled

    protected boolean rootPaneCheckingEnabled

  See Also:
    `isRootPaneCheckingEnabled()`, `setRootPaneCheckingEnabled(boolean)`

### accessibleContext

    protected AccessibleContext accessibleContext

Constructor Detail

### JApplet

    public JApplet()

  Creates a swing applet instance.

Method Detail

### createRootPane

    protected JRootPane createRootPane()

  Called by the constructor methods to create the default rootPane.

### processKeyEvent

    protected void processKeyEvent(java.awt.event.KeyEvent e)

  Overrides:
    processKeyEvent in class java.awt.Component

### update

    public void update(java.awt.Graphics g)

  Just calls `paint(g)`. This method was overridden to prevent an unneccessary call to clear the background.
  Overrides:
    update in class java.awt.Container

### setJMenuBar

    public void setJMenuBar(JMenuBar menuBar)

  Sets the menubar for this applet.
  Parameters:
    `menubar` - the menubar being placed in the applet
  See Also:
    `getJMenuBar()`

### getJMenuBar

    public JMenuBar getJMenuBar()

  Returns the menubar set on this applet.
  See Also:
    `setJMenuBar(javax.swing.JMenuBar)`

### isRootPaneCheckingEnabled

    protected boolean isRootPaneCheckingEnabled()

  Returns:
    true if add and setLayout should be checked
  See Also:
    `addImpl(java.awt.Component, java.lang.Object, int)`, `setLayout(java.awt.LayoutManager)`, `setRootPaneCheckingEnabled(boolean)`

### setRootPaneCheckingEnabled

    protected void setRootPaneCheckingEnabled(boolean enabled)

  If true then calls to add() and setLayout() will cause an exception to be thrown.
  See Also:
    `addImpl(java.awt.Component, java.lang.Object, int)`, `setLayout(java.awt.LayoutManager)`, `isRootPaneCheckingEnabled()`

### addImpl

    protected void addImpl(java.awt.Component comp,
                           java.lang.Object constraints,
                           int index)

  By default, children may not be added directly to a this component, they must be added to its contentPane instead. For example:

       thiComponent.getContentPane().add(child)

  An attempt to add to directly to this component will cause an runtime exception to be thrown. Subclasses can disable this behavior.
  Throws:
    Error - if called with rootPaneChecking true
  Overrides:
    addImpl in class java.awt.Container
  See Also:
    `setRootPaneCheckingEnabled(boolean)`

### setLayout

    public void setLayout(java.awt.LayoutManager manager)

  By default the layout of this component may not be set, the layout of its contentPane should be set instead. For example:

       thiComponent.getContentPane().setLayout(new BorderLayout())

  An attempt to set the layout of this component will cause an runtime exception to be thrown. Subclasses can disable this behavior.
  Throws:
    Error - if called with rootPaneChecking true
  Overrides:
    setLayout in class java.awt.Container
  See Also:
    `setRootPaneCheckingEnabled(boolean)`

### getRootPane

    public JRootPane getRootPane()

  Returns the rootPane object for this applet.
  Specified by:
    getRootPane in interface RootPaneContainer
  See Also:
    `setRootPane(javax.swing.JRootPane)`, `RootPaneContainer.getRootPane()`

### setRootPane

    protected void setRootPane(JRootPane root)

  Sets the rootPane property. This method is called by the constructor.
  Parameters:
    `root` - the rootPane object for this applet
  See Also:
    `getRootPane()`

### getContentPane

    public java.awt.Container getContentPane()

  Returns the contentPane object for this applet.
  Specified by:
    getContentPane in interface RootPaneContainer
  See Also:
    `setContentPane(java.awt.Container)`, `RootPaneContainer.getContentPane()`

### setContentPane

    public void setContentPane(java.awt.Container contentPane)

  Sets the contentPane property. This method is called by the constructor.
  Specified by:
    setContentPane in interface RootPaneContainer
  Parameters:
    `contentPane` - the contentPane object for this applet
  Throws:
    java.awt.IllegalComponentStateException - (a runtime exception) if the content pane parameter is null
  See Also:
    `getContentPane()`, `RootPaneContainer.setContentPane(java.awt.Container)`

### getLayeredPane

    public JLayeredPane getLayeredPane()

  Returns the layeredPane object for this applet.
  Specified by:
    getLayeredPane in interface RootPaneContainer
  Throws:
    java.awt.IllegalComponentStateException - (a runtime exception) if the layered pane parameter is null
  See Also:
    `setLayeredPane(javax.swing.JLayeredPane)`, `RootPaneContainer.getLayeredPane()`

### setLayeredPane

    public void setLayeredPane(JLayeredPane layeredPane)

  Sets the layeredPane property. This method is called by the constructor.
  Specified by:
    setLayeredPane in interface RootPaneContainer
  Parameters:
    `layeredPane` - the layeredPane object for this applet
  See Also:
    `getLayeredPane()`, `RootPaneContainer.setLayeredPane(javax.swing.JLayeredPane)`

### getGlassPane

    public java.awt.Component getGlassPane()

  Returns the glassPane object for this applet.
  Specified by:
    getGlassPane in interface RootPaneContainer
  See Also:
    `setGlassPane(java.awt.Component)`, `RootPaneContainer.getGlassPane()`

### setGlassPane

    public void setGlassPane(java.awt.Component glassPane)

  Sets the glassPane property. This method is called by the constructor.
  Specified by:
    setGlassPane in interface RootPaneContainer
  Parameters:
    `glassPane` - the glassPane object for this applet
  See Also:
    `getGlassPane()`, `RootPaneContainer.setGlassPane(java.awt.Component)`

### paramString

    protected java.lang.String paramString()

  Returns a string representation of this JApplet. This method is intended to be used only for debugging purposes, and the content and format of the returned string may vary between implementations. The returned string may be empty but may not be `null`.

  Overriding paramString() to provide information about the specific new aspects of the JFC components.

  Returns:
    a string representation of this JApplet.
  Overrides:
    paramString in class java.awt.Container

### getAccessibleContext

    public AccessibleContext getAccessibleContext()

  Get the AccessibleContext associated with this JApplet
  Specified by:
    getAccessibleContext in interface Accessible
  Returns:
    the AccessibleContext of this JApplet

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| Swing 1.1
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Submit a bug or feature
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-1998 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.