@DefaultProperty(value="tabs") public class TabPane extends Control
A control that allows switching between a group of Tabs
. Only one tab
is visible at a time. Tabs are added to the TabPane by using the getTabs()
.
Tabs in a TabPane can be positioned at any of the four sides by specifying the
Side
.
A TabPane has two modes floating or recessed. Applying the styleclass STYLE_CLASS_FLOATING will change the TabPane mode to floating.
The tabs width and height can be set to a specific size by setting the min and max for height and width. TabPane default width will be determined by the largest content width in the TabPane. This is the same for the height. If a different size is desired the width and height of the TabPane can be overridden by setting the min, pref and max size.
When the number of tabs do not fit the TabPane a menu button will appear on the right. The menu button is used to select the tabs that are currently not visible.
Example:
TabPane tabPane = new TabPane();
Tab tab = new Tab();
tab.setText("new tab");
tab.setContent(new Rectangle(200,200, Color.LIGHTSTEELBLUE));
tabPane.getTabs().add(tab);
Tab
Type | Property and Description |
---|---|
BooleanProperty |
rotateGraphic
The rotatedGraphic state of the tabs in the TabPane.
|
ObjectProperty<SingleSelectionModel<Tab>> |
selectionModel
The selection model used for selecting tabs.
|
ObjectProperty<Side> |
side
The position of the tabs in the TabPane.
|
ObjectProperty<TabPane.TabClosingPolicy> |
tabClosingPolicy
The closing policy for the tabs.
|
DoubleProperty |
tabMaxHeight
The maximum height of the tabs in the TabPane.
|
DoubleProperty |
tabMaxWidth
The maximum width of the tabs in the TabPane.
|
DoubleProperty |
tabMinHeight
The minimum height of the tab.
|
DoubleProperty |
tabMinWidth
The minimum width of the tabs in the TabPane.
|
contextMenu, skin, tooltip
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
needsLayout
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, visible
Modifier and Type | Class and Description |
---|---|
static class |
TabPane.TabClosingPolicy
This specifies how the TabPane handles tab closing from an end-users
perspective.
|
Modifier and Type | Field and Description |
---|---|
static String |
STYLE_CLASS_FLOATING
TabPane mode will be changed to floating allowing the TabPane
to be placed alongside other control.
|
USE_COMPUTED_SIZE, USE_PREF_SIZE
BASELINE_OFFSET_SAME_AS_HEIGHT
Constructor and Description |
---|
TabPane()
Constructs a new TabPane.
|
TabPane(Tab... tabs)
Constructs a new TabPane with the given tabs set to show.
|
Modifier and Type | Method and Description |
---|---|
protected Skin<?> |
createDefaultSkin()
Create a new instance of the default skin for this control.
|
static List<CssMetaData<? extends Styleable,?>> |
getClassCssMetaData() |
List<CssMetaData<? extends Styleable,?>> |
getControlCssMetaData() |
SingleSelectionModel<Tab> |
getSelectionModel()
Gets the model used for tab selection.
|
Side |
getSide()
The current position of the tabs in the TabPane.
|
TabPane.TabClosingPolicy |
getTabClosingPolicy()
The closing policy for the tabs.
|
double |
getTabMaxHeight()
The maximum height of the tabs in the TabPane.
|
double |
getTabMaxWidth()
The maximum width of the tabs in the TabPane.
|
double |
getTabMinHeight()
The minimum height of the tabs in the TabPane.
|
double |
getTabMinWidth()
The minimum width of the tabs in the TabPane.
|
ObservableList<Tab> |
getTabs()
The tabs to display in this TabPane.
|
boolean |
isRotateGraphic()
Returns
true if the graphic inside a Tab is rotated. |
Node |
lookup(String selector)
Finds this
Node , or the first sub-node, based on the given CSS selector. |
Set<Node> |
lookupAll(String selector)
Finds all
Node s, including this one and any children, which match
the given CSS selector. |
BooleanProperty |
rotateGraphicProperty()
The rotatedGraphic state of the tabs in the TabPane.
|
ObjectProperty<SingleSelectionModel<Tab>> |
selectionModelProperty()
The selection model used for selecting tabs.
|
void |
setRotateGraphic(boolean value)
Specifies whether the graphic inside a Tab is rotated or not, such
that it is always upright, or rotated in the same way as the Tab text is.
|
void |
setSelectionModel(SingleSelectionModel<Tab> value)
Sets the model used for tab selection.
|
void |
setSide(Side value)
The position to place the tabs in this TabPane.
|
void |
setTabClosingPolicy(TabPane.TabClosingPolicy value)
Specifies how the TabPane handles tab closing from an end-users
perspective.
|
void |
setTabMaxHeight(double value)
Sets the value of the property tabMaxHeight.
|
void |
setTabMaxWidth(double value)
Sets the value of the property tabMaxWidth.
|
void |
setTabMinHeight(double value)
The minimum height of the tabs in the TabPane.
|
void |
setTabMinWidth(double value)
The minimum width of the tabs in the TabPane.
|
ObjectProperty<Side> |
sideProperty()
The position of the tabs in the TabPane.
|
ObjectProperty<TabPane.TabClosingPolicy> |
tabClosingPolicyProperty()
The closing policy for the tabs.
|
DoubleProperty |
tabMaxHeightProperty()
The maximum height of the tabs in the TabPane.
|
DoubleProperty |
tabMaxWidthProperty()
The maximum width of the tabs in the TabPane.
|
DoubleProperty |
tabMinHeightProperty()
The minimum height of the tab.
|
DoubleProperty |
tabMinWidthProperty()
The minimum width of the tabs in the TabPane.
|
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapSize, snapSpace, snapToPixelProperty, widthProperty
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, visibleProperty
public final ObjectProperty<SingleSelectionModel<Tab>> selectionModelProperty
public final ObjectProperty<Side> sideProperty
getSide()
,
setSide(Side)
public final ObjectProperty<TabPane.TabClosingPolicy> tabClosingPolicyProperty
public final BooleanProperty rotateGraphicProperty
isRotateGraphic()
,
setRotateGraphic(boolean)
public final DoubleProperty tabMinWidthProperty
getTabMinWidth()
,
setTabMinWidth(double)
public final DoubleProperty tabMaxWidthProperty
public final DoubleProperty tabMinHeightProperty
getTabMinHeight()
,
setTabMinHeight(double)
public final DoubleProperty tabMaxHeightProperty
The maximum height of the tabs in the TabPane.
public static final String STYLE_CLASS_FLOATING
public final ObservableList<Tab> getTabs()
The tabs to display in this TabPane. Changing this ObservableList will immediately result in the TabPane updating to display the new contents of this ObservableList.
If the tabs ObservableList changes, the selected tab will remain the previously selected tab, if it remains within this ObservableList. If the previously selected tab is no longer in the tabs ObservableList, the selected tab will become the first tab in the ObservableList.
public final void setSelectionModel(SingleSelectionModel<Tab> value)
Sets the model used for tab selection. By changing the model you can alter how the tabs are selected and which tabs are first or last.
public final SingleSelectionModel<Tab> getSelectionModel()
Gets the model used for tab selection.
public final ObjectProperty<SingleSelectionModel<Tab>> selectionModelProperty()
public final void setSide(Side value)
The position to place the tabs in this TabPane. Whenever this changes the TabPane will immediately update the location of the tabs to reflect this.
public final Side getSide()
public final ObjectProperty<Side> sideProperty()
getSide()
,
setSide(Side)
public final void setTabClosingPolicy(TabPane.TabClosingPolicy value)
Specifies how the TabPane handles tab closing from an end-users perspective. The options are:
Refer to the TabPane.TabClosingPolicy
enumeration for further details.
public final TabPane.TabClosingPolicy getTabClosingPolicy()
public final ObjectProperty<TabPane.TabClosingPolicy> tabClosingPolicyProperty()
public final void setRotateGraphic(boolean value)
Specifies whether the graphic inside a Tab is rotated or not, such that it is always upright, or rotated in the same way as the Tab text is.
By default rotateGraphic is set to false, to represent the fact that
the graphic isn't rotated, resulting in it always appearing upright. If
rotateGraphic is set to true
, the graphic will rotate such that it
rotates with the tab text.
public final boolean isRotateGraphic()
true
if the graphic inside a Tab is rotated. The
default is false
public final BooleanProperty rotateGraphicProperty()
isRotateGraphic()
,
setRotateGraphic(boolean)
public final void setTabMinWidth(double value)
The minimum width of the tabs in the TabPane. This can be used to limit
the length of text in tabs to prevent truncation. Setting the min equal
to the max will fix the width of the tab. By default the min equals to the max.
This value can also be set via CSS using -fx-tab-min-width
public final double getTabMinWidth()
public final DoubleProperty tabMinWidthProperty()
getTabMinWidth()
,
setTabMinWidth(double)
public final void setTabMaxWidth(double value)
Specifies the maximum width of a tab. This can be used to limit
the length of text in tabs. If the tab text is longer than the maximum
width the text will be truncated. Setting the max equal
to the min will fix the width of the tab. By default the min equals to the max
This value can also be set via CSS using -fx-tab-max-width
.
public final double getTabMaxWidth()
public final DoubleProperty tabMaxWidthProperty()
public final void setTabMinHeight(double value)
The minimum height of the tabs in the TabPane. This can be used to limit
the height in tabs. Setting the min equal to the max will fix the height
of the tab. By default the min equals to the max.
This value can also be set via CSS using -fx-tab-min-height
public final double getTabMinHeight()
public final DoubleProperty tabMinHeightProperty()
getTabMinHeight()
,
setTabMinHeight(double)
public final void setTabMaxHeight(double value)
The maximum height if the tabs in the TabPane. This can be used to limit the height in tabs. Setting the max equal to the min will fix the height of the tab. By default the min equals to the max. This value can also be set via CSS using -fx-tab-max-height
public final double getTabMaxHeight()
public final DoubleProperty tabMaxHeightProperty()
The maximum height of the tabs in the TabPane.
protected Skin<?> createDefaultSkin()
-fx-skin
or set explicitly in a sub-class with setSkin(...)
.createDefaultSkin
in class Control
public Node lookup(String selector)
Node
, or the first sub-node, based on the given CSS selector.
If this node is a Parent
, then this function will traverse down
into the branch until it finds a match. If more than one sub-node matches the
specified selector, this function returns the first of them.
For example, if a Node is given the id of "myId", then the lookup method can
be used to find this node as follows: scene.lookup("#myId");
.
public Set<Node> lookupAll(String selector)
Node
s, including this one and any children, which match
the given CSS selector. If no matches are found, an empty unmodifiable set is
returned. The set is explicitly unordered.public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
public List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
getControlCssMetaData
in class Control
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2008, 2017, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.