Spec-Zone.ru › OpenJavaFX 21

Класс SplitPane

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.SplitPane
Все реализованные интерфейсы:
Styleable, EventTarget, Skinnable
@DefaultProperty("items") public class SplitPane extends Control

Контрол, состоящий из двух или более частей, разделённых разделителями, которые пользователь может перетаскивать, чтобы увеличить пространство одной из частей, уменьшая при этом другую часть на равную величину.

Nodes могут быть расположены рядом друг с другом по горизонтали или стопкой по вертикали. Это можно настроить, задав свойство orientationProperty().

Разделители в SplitPane ведут себя следующим образом:

  • Разделители не могут перекрывать друг друга.
  • Разделители не могут перекрывать узел.
  • Разделители, перемещающиеся влево/вверх, останавливаются, когда достигается минимальный размер узла.
  • Разделители, перемещающиеся вправо/вниз, останавливаются, когда достигается максимальный размер узла.

Узлы должны быть размещены внутри контейнера макета перед добавлением в SplitPane. Если узел не находится внутри контейнера макета, максимальное и минимальное положение разделителя будет соответствовать максимальному и минимальному размеру содержимого.

Положение разделителя изменяется от 0 до 1.0 (включительно). Положение 0 помещает разделитель на крайнюю левую/верхнюю границу SplitPane плюс минимальный размер узла. Положение 1.0 помещает разделитель на крайнюю правую/нижнюю границу SplitPane минус минимальный размер узла. Положение разделителя 0.5 помещает его в центр SplitPane. Установка положения разделителя больше максимального размера узла приводит к установке разделителя на максимальное положение размера узла. Установка положения разделителя меньше минимального размера узла приводит к установке разделителя на минимальное положение размера узла. Поэтому значение, установленное в setDividerPosition(int, double) и setDividerPositions(double...), может отличаться от значения, возвращаемого getDividerPositions().

Если в SplitPane более двух узлов, и положения разделителей заданы таким образом, что разделители не могут разместиться рядом с узлами, разделители будут автоматически скорректированы SplitPane.

Например, у нас есть три узла, размеры и позиции разделителей которых:

 Node 1: min 25 max 100
 Node 2: min 100 max 200
 Node 3: min 25 max 50
 divider 1: 0.40
 divider 2: 0.45
 

Результат: размер узла 1 будет соответствовать его предпочтительному размеру, и разделитель 1 будет расположен в позиции 0.40; размер узла 2 будет соответствовать его минимальному размеру, и позиция разделителя 2 будет соответствовать минимальному размеру узла 2 плюс позиции разделителя 1; оставшееся пространство будет выделено для узла 3.

SplitPane устанавливает focusTraversable в false.

Пример:

 SplitPane sp = new SplitPane();
 final StackPane sp1 = new StackPane();
 sp1.getChildren().add(new Button("Button One"));
 final StackPane sp2 = new StackPane();
 sp2.getChildren().add(new Button("Button Two"));
 final StackPane sp3 = new StackPane();
 sp3.getChildren().add(new Button("Button Three"));
 sp.getItems().addAll(sp1, sp2, sp3);
 sp.setDividerPositions(0.3f, 0.6f, 0.9f);
Image of the SplitPane control
С момента:
JavaFX 2.0

Краткое описание свойств

Тип Свойство Описание
final ObjectProperty<Orientation> orientation
Направление для SplitPane.

Свойства, объявленные в классе javafx.scene.control.Control

contextMenu, skin, tooltip

Свойства, объявленные в классе javafx.scene.layout.Region

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

Свойства, объявленные в классе javafx.scene.Parent

needsLayout

Свойства, объявленные в классе javafx.scene.Node

accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, focusVisible, focusWithin, 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

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static class  SplitPane.Divider
Представляет отдельный разделитель в SplitPane.

Краткое описание полей

Поля, объявленные в классе javafx.scene.layout.Region

USE_COMPUTED_SIZE, USE_PREF_SIZE

Поля, объявленные в классе javafx.scene.Node

BASELINE_OFFSET_SAME_AS_HEIGHT

Краткое описание конструкторов

Конструктор Описание
SplitPane()
Создаёт новый SplitPane без содержимого.
SplitPane(Node... items)
Создаёт новый SplitPane с заданными элементами в качестве содержимого для разделения между одним или несколькими разделителями.

Краткое описание методов

Модификатор и тип Метод Описание
static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
Получает ассоциированные с этим классом CssMetaData, которые могут включать CssMetaData его суперклассов.
List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
Возвращает неизменяемый список стилизуемых свойств управления CSS.
double[] getDividerPositions()
Возвращает массив double, содержащий положение каждого разделителя.
ObservableList<SplitPane.Divider> getDividers()
Возвращает неизменяемый список всех разделителей в данном SplitPane.
protected Boolean getInitialFocusTraversable()
Возвращает начальное состояние focus traversable этого управления, используемое движком JavaFX CSS для правильной установки его начального значения.
ObservableList<Node> getItems()
Возвращает ObservableList, который можно использовать для изменения содержимого SplitPane.
final Orientation getOrientation()
Направление для SplitPane.
static Boolean isResizableWithParent(Node node)
Возвращает true, если узел масштабируется при изменении размера родительского контейнера, false в противном случае.
final ObjectProperty<Orientation> orientationProperty()
Направление для SplitPane.
void setDividerPosition(int dividerIndex, double position)
Устанавливает положение разделителя в указанном индексе разделителя.
void setDividerPositions(double... positions)
Устанавливает положение разделителя
final void setOrientation(Orientation value)
Это свойство управляет тем, как SplitPane должен отображаться пользователю.
static void setResizableWithParent(Node node, Boolean value)
Устанавливает, должен ли узел в SplitPane масштабироваться при изменении размера SplitPane.

Методы, объявленные в классе javafx.scene.control.Control

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

Методы, объявленные в классе 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

Методы, объявленные в классе javafx.scene.Parent

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

Методы, объявленные в классе 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, focusVisibleProperty, focusWithinProperty, 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, isFocusVisible, isFocusWithin, 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

Методы, объявленные в классе java.lang.Object

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

Методы, объявленные в интерфейсе javafx.css.Styleable

getStyleableNode

Подробное описание свойств

orientation

public final ObjectProperty<Orientation> orientationProperty
Ориентация для SplitPane.
См. также:
  • getOrientation()
  • setOrientation(Orientation)
  • orientationProperty()

Подробное описание конструкторов

SplitPane

public SplitPane()
Создаёт новый SplitPane без содержимого.

SplitPane

public SplitPane(Node... items)
Создаёт новый SplitPane с заданными элементами, устанавливаемыми как содержимое для разделения между одним или несколькими разделителями.
Параметры:
items - Элементы, размещаемые внутри SplitPane.
С тех пор:
JavaFX 8u40

Подробное описание методов

setResizableWithParent

public static void setResizableWithParent(Node node, Boolean value)
Устанавливает возможность изменения размера узла в SplitPane при изменении размера SplitPane. По умолчанию все узлы могут быть изменены в размере. Установка значения в false предотвратит изменение размера узла.
Параметры:
node - Узел в SplitPane.
value - true, если узел может быть изменён в размере, или false, если нет.
С тех пор:
JavaFX 2.1

isResizableWithParent

public static Boolean isResizableWithParent(Node node)
Возвращает true, если узел может быть изменён в размере при изменении размера родительского контейнера, иначе false.
Значение по умолчанию:
true
Параметры:
node - Узел в SplitPane.
Возвращает:
true, если узел может быть изменён в размере, иначе false.
С тех пор:
JavaFX 2.1

setOrientation

public final void setOrientation(Orientation value)

Это свойство управляет способом отображения SplitPane для пользователя. Orientation.HORIZONTAL приведет к размещению двух (или более) узлов рядом друг с другом по горизонтали, в то время как Orientation.VERTICAL приведет к расположению узлов друг под другом по вертикали.

Параметры:
value - значение ориентации

getOrientation

public final Orientation getOrientation()
Ориентация для SplitPane.
Возвращает:
Ориентация для SplitPane.

orientationProperty

public final ObjectProperty<Orientation> orientationProperty()
Ориентация для SplitPane.
Возвращает:
свойство ориентации для SplitPane
См. также:
  • getOrientation()
  • setOrientation(Orientation)

getItems

public ObservableList<Node> getItems()
Возвращает ObservableList, который можно использовать для изменения содержимого SplitPane. Порядок расположения узлов в этом списке будет соответствовать порядку в SplitPane.
Возвращает:
список элементов в этом SplitPane.

getDividers

public ObservableList<SplitPane.Divider> getDividers()
Возвращает неизменяемый список всех разделителей в этом SplitPane.
Возвращает:
список разделителей.

setDividerPosition

public void setDividerPosition(int dividerIndex, double position)
Устанавливает положение разделителя в указанном индексе разделителя.
Параметры:
dividerIndex - индекс разделителя.
position - положение разделителя, между 0,0 и 1,0 (включительно).

setDividerPositions

public void setDividerPositions(double... positions)
Устанавливает положение разделителя
Параметры:
positions - положение разделителя, между 0,0 и 1,0 (включительно).

getDividerPositions

public double[] getDividerPositions()
Возвращает массив double, содержащий положение каждого разделителя.
Возвращает:
массив double, содержащий положение каждого разделителя.

getClassCssMetaData

public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
Получает CssMetaData, ассоциированное с этим классом, которое может включать CssMetaData его суперклассов.
Возвращает:
CssMetaData
С тех пор:
JavaFX 8.0

getControlCssMetaData

public List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
Получает неизменяемый список CSS-стилизуемых свойств элемента управления.
Переопределяет:
getControlCssMetaData в классе Control
Возвращает:
неизменяемый список CSS-стилизуемых свойств элемента управления
С тех пор:
JavaFX 8.0

getInitialFocusTraversable

protected Boolean getInitialFocusTraversable()
Возвращает начальное состояние фокуса для перехода по элементам управления, используемое движком JavaFX CSS для корректной установки начального значения. Этот метод переопределен, так как по умолчанию элементы управления UI имеют фокус, установленный на true, но это не подходит для этого элемента управления.
Переопределяет:
getInitialFocusTraversable в классе Control
Возвращает:
начальное состояние фокуса для перехода по элементам управления
С тех пор:
9

© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API