/*
 * Copyright (c) 1995, 2015, Oracle and/or its affiliates. All rights reserved.
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * This code is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License version 2 only, as
 * published by the Free Software Foundation.  Oracle designates this
 * particular file as subject to the "Classpath" exception as provided
 * by Oracle in the LICENSE file that accompanied this code.
 *
 * This code is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 * version 2 for more details (a copy is included in the LICENSE file that
 * accompanied this code).
 *
 * You should have received a copy of the GNU General Public License version
 * 2 along with this work; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 *
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 * or visit www.oracle.com if you need additional information or have any
 * questions.
 */
package java.awt;

import javax.accessibility.*;

Panel is the simplest container class. A panel provides space in which an application can attach any other component, including other panels.

The default layout manager for a panel is the FlowLayout layout manager.

Author: Sami Shaio
See Also:
Since: 1.0
/** * {@code Panel} is the simplest container class. A panel * provides space in which an application can attach any other * component, including other panels. * <p> * The default layout manager for a panel is the * {@code FlowLayout} layout manager. * * @author Sami Shaio * @see java.awt.FlowLayout * @since 1.0 */
public class Panel extends Container implements Accessible { private static final String base = "panel"; private static int nameCounter = 0; /* * JDK 1.1 serialVersionUID */ private static final long serialVersionUID = -2728009084054400034L;
Creates a new panel using the default layout manager. The default layout manager for all panels is the FlowLayout class.
/** * Creates a new panel using the default layout manager. * The default layout manager for all panels is the * {@code FlowLayout} class. */
public Panel() { this(new FlowLayout()); }
Creates a new panel with the specified layout manager.
Params:
  • layout – the layout manager for this panel.
Since:1.1
/** * Creates a new panel with the specified layout manager. * @param layout the layout manager for this panel. * @since 1.1 */
public Panel(LayoutManager layout) { setLayout(layout); }
Construct a name for this component. Called by getName() when the name is null.
/** * Construct a name for this component. Called by getName() when the * name is null. */
String constructComponentName() { synchronized (Panel.class) { return base + nameCounter++; } }
Creates the Panel's peer. The peer allows you to modify the appearance of the panel without changing its functionality.
/** * Creates the Panel's peer. The peer allows you to modify the * appearance of the panel without changing its functionality. */
public void addNotify() { synchronized (getTreeLock()) { if (peer == null) peer = getComponentFactory().createPanel(this); super.addNotify(); } } ///////////////// // Accessibility support ////////////////
Gets the AccessibleContext associated with this Panel. For panels, the AccessibleContext takes the form of an AccessibleAWTPanel. A new AccessibleAWTPanel instance is created if necessary.
Returns:an AccessibleAWTPanel that serves as the AccessibleContext of this Panel
Since:1.3
/** * Gets the AccessibleContext associated with this Panel. * For panels, the AccessibleContext takes the form of an * AccessibleAWTPanel. * A new AccessibleAWTPanel instance is created if necessary. * * @return an AccessibleAWTPanel that serves as the * AccessibleContext of this Panel * @since 1.3 */
public AccessibleContext getAccessibleContext() { if (accessibleContext == null) { accessibleContext = new AccessibleAWTPanel(); } return accessibleContext; }
This class implements accessibility support for the Panel class. It provides an implementation of the Java Accessibility API appropriate to panel user-interface elements.
Since:1.3
/** * This class implements accessibility support for the * {@code Panel} class. It provides an implementation of the * Java Accessibility API appropriate to panel user-interface elements. * @since 1.3 */
protected class AccessibleAWTPanel extends AccessibleAWTContainer { private static final long serialVersionUID = -6409552226660031050L;
Get the role of this object.
Returns:an instance of AccessibleRole describing the role of the object
/** * Get the role of this object. * * @return an instance of AccessibleRole describing the role of the * object */
public AccessibleRole getAccessibleRole() { return AccessibleRole.PANEL; } } }