Module javafx.controls
Package javafx.scene.control

# Class Separator

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.Separator

All Implemented Interfaces:
  `Styleable`, `EventTarget`, `Skinnable`

public class Separator extends Control
A horizontal or vertical separator line. The visual appearance of this separator can be controlled via CSS. A horizontal separator occupies the full horizontal space allocated to it (less padding), and a vertical separator occupies the full vertical space allocated to it (less padding). The `halignment` and `valignment` properties determine how the separator is positioned in the other dimension, for example, how a horizontal separator is positioned vertically within its allocated space.

The separator is horizontal (i.e. `isVertical() == false`) by default.

The style-class for this control is "separator".

The separator provides two pseudo-classes "horizontal" and "vertical" which are mutually exclusive. The "horizontal" pseudo-class applies if the separator is horizontal, and the "vertical" pseudo-class applies if the separator is vertical.

Separator sets focusTraversable to false.

Example:

     Button b0 = new Button("Button 0");
     Button b1 = new Button("Button 1");
     Button b2 = new Button("Button 2");
     Button b3 = new Button("Button 3");
     Separator separator = new Separator(Orientation.HORIZONTAL);
     VBox vBox = new VBox(b0, b1, separator, b2, b3);

Since:
  JavaFX 2.0

- ## Property Summary

  Properties
  Type
  Property
  Description
  `final ObjectProperty<HPos>`
  `halignment`
  For vertical separators, specifies the horizontal position of the separator line within the separator control's space.
  `final ObjectProperty<Orientation>`
  `orientation`
  The orientation of the `Separator` can either be horizontal or vertical.
  `final ObjectProperty<VPos>`
  `valignment`
  For horizontal separators, specifies the vertical alignment of the separator line within the separator control's space.

  ### Properties declared in class javafx.scene.control.Control

  `contextMenu, skin, tooltip`

  ### Properties declared in class javafx.scene.layout.Region

  `background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width`

  ### Properties declared in class javafx.scene.Parent

  `needsLayout`

  ### Properties declared in class javafx.scene.Node

  `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, viewOrder, visible`

- ## Field Summary

  ### Fields declared in class javafx.scene.layout.Region

  `USE_COMPUTED_SIZE, USE_PREF_SIZE`

  ### Fields declared in class javafx.scene.Node

  `BASELINE_OFFSET_SAME_AS_HEIGHT`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Separator()`
  Creates a new horizontal separator with halignment and valignment set to their respective CENTER values.
  `Separator(Orientation orientation)`
  Creates a new separator with halignment and valignment set to their respective CENTER values.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static List<CssMetaData<? extends Styleable,?>>`
  `getClassCssMetaData()`
  `protected List<CssMetaData<? extends Styleable,?>>`
  `getControlCssMetaData()`
  `final HPos`
  `getHalignment()`
  Gets the value of the property halignment.
  `protected Boolean`
  `getInitialFocusTraversable()`
  Returns the initial focus traversable state of this control, for use by the JavaFX CSS engine to correctly set its initial value.
  `final Orientation`
  `getOrientation()`
  Gets the value of the property orientation.
  `final VPos`
  `getValignment()`
  Gets the value of the property valignment.
  `final ObjectProperty<HPos>`
  `halignmentProperty()`
  For vertical separators, specifies the horizontal position of the separator line within the separator control's space.
  `final ObjectProperty<Orientation>`
  `orientationProperty()`
  The orientation of the `Separator` can either be horizontal or vertical.
  `final void`
  `setHalignment(HPos value)`
  Sets the value of the property halignment.
  `final void`
  `setOrientation(Orientation value)`
  Sets the value of the property orientation.
  `final void`
  `setValignment(VPos value)`
  Sets the value of the property valignment.
  `final ObjectProperty<VPos>`
  `valignmentProperty()`
  For horizontal separators, specifies the vertical alignment of the separator line within the separator control's space.

  ### Methods declared in class javafx.scene.control.Control

  `computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, contextMenuProperty, createDefaultSkin, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty`

  ### Methods declared in class javafx.scene.layout.Region

  `backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computePrefHeight, computePrefWidth, 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, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty`

  ### Methods declared in class javafx.scene.Parent

  `getBaselineOffset, getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds`

  ### Methods declared in class javafx.scene.Node

  `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, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, 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, getViewOrder, 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, lookup, lookupAll, 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, queryAccessibleAttribute, 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, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty`

  ### Methods declared in class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

  ### Methods declared in interface javafx.css.Styleable

  `getStyleableNode`

- ## Property Details

  - ### orientation

    public final ObjectProperty<Orientation> orientationProperty
    The orientation of the `Separator` can either be horizontal or vertical.
    See Also:
      - `getOrientation()`
      - `setOrientation(Orientation)`

  - ### halignment

    public final ObjectProperty<HPos> halignmentProperty
    For vertical separators, specifies the horizontal position of the separator line within the separator control's space. Ignored for horizontal separators.
    See Also:
      - `getHalignment()`
      - `setHalignment(HPos)`

  - ### valignment

    public final ObjectProperty<VPos> valignmentProperty
    For horizontal separators, specifies the vertical alignment of the separator line within the separator control's space. Ignored for vertical separators.
    See Also:
      - `getValignment()`
      - `setValignment(VPos)`

- ## Constructor Details

  - ### Separator

    public Separator()
    Creates a new horizontal separator with halignment and valignment set to their respective CENTER values.

  - ### Separator

    public Separator(Orientation orientation)
    Creates a new separator with halignment and valignment set to their respective CENTER values. The direction of the separator is specified by the vertical property.
    Parameters:
      `orientation` - Specifies whether the Separator instance is initially vertical or horizontal.

- ## Method Details

  - ### setOrientation

    public final void setOrientation(Orientation value)
    Sets the value of the property orientation.
    Property description:
      The orientation of the `Separator` can either be horizontal or vertical.

  - ### getOrientation

    public final Orientation getOrientation()
    Gets the value of the property orientation.
    Property description:
      The orientation of the `Separator` can either be horizontal or vertical.

  - ### orientationProperty

    public final ObjectProperty<Orientation> orientationProperty()
    The orientation of the `Separator` can either be horizontal or vertical.
    See Also:
      - `getOrientation()`
      - `setOrientation(Orientation)`

  - ### setHalignment

    public final void setHalignment(HPos value)
    Sets the value of the property halignment.
    Property description:
      For vertical separators, specifies the horizontal position of the separator line within the separator control's space. Ignored for horizontal separators.

  - ### getHalignment

    public final HPos getHalignment()
    Gets the value of the property halignment.
    Property description:
      For vertical separators, specifies the horizontal position of the separator line within the separator control's space. Ignored for horizontal separators.

  - ### halignmentProperty

    public final ObjectProperty<HPos> halignmentProperty()
    For vertical separators, specifies the horizontal position of the separator line within the separator control's space. Ignored for horizontal separators.
    See Also:
      - `getHalignment()`
      - `setHalignment(HPos)`

  - ### setValignment

    public final void setValignment(VPos value)
    Sets the value of the property valignment.
    Property description:
      For horizontal separators, specifies the vertical alignment of the separator line within the separator control's space. Ignored for vertical separators.

  - ### getValignment

    public final VPos getValignment()
    Gets the value of the property valignment.
    Property description:
      For horizontal separators, specifies the vertical alignment of the separator line within the separator control's space. Ignored for vertical separators.

  - ### valignmentProperty

    public final ObjectProperty<VPos> valignmentProperty()
    For horizontal separators, specifies the vertical alignment of the separator line within the separator control's space. Ignored for vertical separators.
    See Also:
      - `getValignment()`
      - `setValignment(VPos)`

  - ### getClassCssMetaData

    public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
    Returns:
      The CssMetaData associated with this class, which may include the CssMetaData of its superclasses.
    Since:
      JavaFX 8.0

  - ### getControlCssMetaData

    protected List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
    Overrides:
      `getControlCssMetaData` in class `Control`
    Returns:
      unmodifiable list of the controls css styleable properties
    Since:
      JavaFX 8.0

  - ### getInitialFocusTraversable

    protected Boolean getInitialFocusTraversable()
    Returns the initial focus traversable state of this control, for use by the JavaFX CSS engine to correctly set its initial value. This method is overridden as by default UI controls have focus traversable set to true, but that is not appropriate for this control.
    Overrides:
      `getInitialFocusTraversable` in class `Control`
    Returns:
      the initial focus traversable state of this control
    Since:
      9