< prev index next >

src/java.desktop/share/classes/javax/swing/JRootPane.java

Print this page




  53  * <p style="text-align:center"><img src="doc-files/JRootPane-1.gif"
  54  * alt="The following text describes this graphic."
  55  * HEIGHT=484 WIDTH=629></p>
  56  * The &quot;heavyweight&quot; components (those that delegate to a peer, or native
  57  * component on the host system) are shown with a darker, heavier box. The four
  58  * heavyweight JFC/Swing containers (<code>JFrame</code>, <code>JDialog</code>,
  59  * <code>JWindow</code>, and <code>JApplet</code>) are
  60  * shown in relation to the AWT classes they extend.
  61  * These four components are the
  62  * only heavyweight containers in the Swing library. The lightweight container
  63  * <code>JInternalFrame</code> is also shown.
  64  * All five of these JFC/Swing containers implement the
  65  * <code>RootPaneContainer</code> interface,
  66  * and they all delegate their operations to a
  67  * <code>JRootPane</code> (shown with a little "handle" on top).
  68  * <blockquote>
  69  * <b>Note:</b> The <code>JComponent</code> method <code>getRootPane</code>
  70  * can be used to obtain the <code>JRootPane</code> that contains
  71  * a given component.
  72  * </blockquote>
  73  * <table style="float:right" border="0" summary="layout">


  74  * <tr>
  75  * <td style="text-align:center">
  76  * <img src="doc-files/JRootPane-2.gif"
  77  * alt="The following text describes this graphic." HEIGHT=386 WIDTH=349>
  78  * </td>
  79  * </tr>
  80  * </table>
  81  * The diagram at right shows the structure of a <code>JRootPane</code>.
  82  * A <code>JRootpane</code> is made up of a <code>glassPane</code>,
  83  * an optional <code>menuBar</code>, and a <code>contentPane</code>.
  84  * (The <code>JLayeredPane</code> manages the <code>menuBar</code>
  85  * and the <code>contentPane</code>.)
  86  * The <code>glassPane</code> sits over the top of everything,
  87  * where it is in a position to intercept mouse movements.
  88  * Since the <code>glassPane</code> (like the <code>contentPane</code>)
  89  * can be an arbitrary component, it is also possible to set up the
  90  * <code>glassPane</code> for drawing. Lines and images on the
  91  * <code>glassPane</code> can then range
  92  * over the frames underneath without being limited by their boundaries.
  93  * <p>




  53  * <p style="text-align:center"><img src="doc-files/JRootPane-1.gif"
  54  * alt="The following text describes this graphic."
  55  * HEIGHT=484 WIDTH=629></p>
  56  * The &quot;heavyweight&quot; components (those that delegate to a peer, or native
  57  * component on the host system) are shown with a darker, heavier box. The four
  58  * heavyweight JFC/Swing containers (<code>JFrame</code>, <code>JDialog</code>,
  59  * <code>JWindow</code>, and <code>JApplet</code>) are
  60  * shown in relation to the AWT classes they extend.
  61  * These four components are the
  62  * only heavyweight containers in the Swing library. The lightweight container
  63  * <code>JInternalFrame</code> is also shown.
  64  * All five of these JFC/Swing containers implement the
  65  * <code>RootPaneContainer</code> interface,
  66  * and they all delegate their operations to a
  67  * <code>JRootPane</code> (shown with a little "handle" on top).
  68  * <blockquote>
  69  * <b>Note:</b> The <code>JComponent</code> method <code>getRootPane</code>
  70  * can be used to obtain the <code>JRootPane</code> that contains
  71  * a given component.
  72  * </blockquote>
  73  *
  74  * <table class="borderless" style="float:right">
  75  * <caption style="display:none">Example</caption>
  76  * <tr>
  77  * <td style="text-align:center">
  78  * <img src="doc-files/JRootPane-2.gif"
  79  * alt="The following text describes this graphic." HEIGHT=386 WIDTH=349>
  80  * </td>
  81  * </tr>
  82  * </table>
  83  * The diagram at right shows the structure of a <code>JRootPane</code>.
  84  * A <code>JRootpane</code> is made up of a <code>glassPane</code>,
  85  * an optional <code>menuBar</code>, and a <code>contentPane</code>.
  86  * (The <code>JLayeredPane</code> manages the <code>menuBar</code>
  87  * and the <code>contentPane</code>.)
  88  * The <code>glassPane</code> sits over the top of everything,
  89  * where it is in a position to intercept mouse movements.
  90  * Since the <code>glassPane</code> (like the <code>contentPane</code>)
  91  * can be an arbitrary component, it is also possible to set up the
  92  * <code>glassPane</code> for drawing. Lines and images on the
  93  * <code>glassPane</code> can then range
  94  * over the frames underneath without being limited by their boundaries.
  95  * <p>


< prev index next >