public class Tab
extends javax.swing.JPanel
A Tab is a component that represents a tab in a TabbedPanel
.
A tab can hold a content component. The content component will then be shown in the content area of the TabbedPanel that the tab is a member of when the tab is selected. If the tab doesn't have a content component, then the TabbedPanel will not show any content in the content area, i.e. it will be empty.
The tab is basically a JPanel with a BorderLayout. The layout manager can be
changed using setLayout. Components and borders can be added and removed from the
tab. The tab can also be subclassed to create other types of tabs, see
TitledTab
. In most cases TitledTab
is the preferred tab type
to use because TitledTab adds support for a text, icon, looks etc.
The tab component will be shown in the tab area of a TabbedPanel after the tab has become a member of that TabbedPanel by either adding or inserting it. A tab can only be a member of one TabbedPanel at the same time.
A tab can have different states when it is a member of a TabbedPanel:
TabListener
,
TabbedPanel
,
TitledTab
,
Serialized Formjavax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
Tab()
Constructs a tab without a content component and this tab as event
component
|
Tab(javax.swing.JComponent contentComponent)
Constructs a tab with a content component and this tab as event
component
|
Modifier and Type | Method and Description |
---|---|
void |
addNotify() |
void |
addTabListener(TabListener listener)
Adds a TabListener
|
javax.swing.JComponent |
getContentComponent()
Gets the content component
|
javax.swing.JComponent[] |
getEventComponents()
Gets the event components for this Tab
|
javax.swing.JComponent |
getFocusableComponent()
Gets the component in this tab that is focusable
|
int |
getIndex()
Gets the index of this tab in the TabbedPanel.
|
java.awt.Shape |
getShape()
Gets the tab
Shape . |
TabbedPanel |
getTabbedPanel()
Gets the TabbedPanel that this tab is a member of
|
boolean |
isHighlighted()
Returns if this tab is highlighted in the TabbedPanel that it is a member of.
|
boolean |
isSelected()
Returns if this tab is selected in the TabbedPanel that it is a member of.
|
void |
removeNotify() |
void |
removeTabListener(TabListener listener)
Removes a TabListener
|
void |
setEnabled(boolean enabled)
Enable or disable this tab.
|
void |
setEventComponent(javax.swing.JComponent eventComponent)
Sets the event component.
|
void |
setEventComponents(javax.swing.JComponent[] eventComponents)
Sets a list of event components.
|
void |
setFocusableComponent(javax.swing.JComponent focusableComponent)
Sets the component in this tab that represents the focusable part of the
tab.
|
void |
setHighlighted(boolean highlighted)
Highlights this tab.
|
void |
setSelected(boolean selected)
Selects this tab.
|
protected void |
setTabbedPanel(TabbedPanel tabbedPanel)
Called by the tabbed panel when the tab becomes a member or is no longer a member of the
tabbed panel
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
public Tab()
public Tab(javax.swing.JComponent contentComponent)
contentComponent
- content component for this tab or null for
no content component.setEventComponent(javax.swing.JComponent)
public void addTabListener(TabListener listener)
listener
- the TabListener to addpublic void removeTabListener(TabListener listener)
listener
- the TabListener to removepublic javax.swing.JComponent getContentComponent()
public TabbedPanel getTabbedPanel()
public void setEnabled(boolean enabled)
Enable or disable this tab.
If the tab is disabled, then the tab will not signal any events until it is enabled again.
setEnabled
in class javax.swing.JComponent
enabled
- true for enabled, otherwise falsepublic void setSelected(boolean selected)
Selects this tab. A tab can only have the selected state if it is a member of a TabbedPanel.
Setting selected to true means that this tab will be the selected tab in the TabbedPanel it is a member of. If this tab is the selected tab in the TabbedPanel then setting selected to false means there will be no selected tab in the TabbedPanel until another tab is selected.
selected
- True for selected, otherwise falsepublic boolean isSelected()
public void setHighlighted(boolean highlighted)
highlighted
- true for highlight, otherwise falsepublic boolean isHighlighted()
public void setEventComponent(javax.swing.JComponent eventComponent)
Sets the event component. An event component is a component in the tab that is used for internal listening to mouse events on the tab.
Note: The event component must be part of this Tab
eventComponent
- a component in this tab that should be used for mouse
event listeningpublic void setEventComponents(javax.swing.JComponent[] eventComponents)
Sets a list of event components. An event component is a component in the tab that is used for internal listening to mouse events on the tab. This method makes it possible to use several components in the tab as event components.
Note: The event components must be part of this Tab
eventComponents
- a list of components in this tab that should be used for
mouse event listeningpublic javax.swing.JComponent[] getEventComponents()
public int getIndex()
public javax.swing.JComponent getFocusableComponent()
public void setFocusableComponent(javax.swing.JComponent focusableComponent)
Sets the component in this tab that represents the focusable part of the tab.
Note: The focusable component must be part of this Tab
focusableComponent
- a component in this tab or null if no component
should be focusablepublic java.awt.Shape getShape()
Gets the tab Shape
.
This returns the shape of the tab. This can be be used by for example content borders in the tabbed panel so they can skip a gap where the tab intersects the tabbed panel content area.
Shape
, null if the tab has the normal component rectangle shapeprotected void setTabbedPanel(TabbedPanel tabbedPanel)
tabbedPanel
- tabbed panel that this tab is a member of or null if this tab is no
longer a member o a tabbed panelpublic void addNotify()
addNotify
in class javax.swing.JComponent
public void removeNotify()
removeNotify
in class javax.swing.JComponent