Класс 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); - С момента:
- JavaFX 2.0
Краткое описание вложенных классов
| Модификатор и тип | Класс | Описание |
|---|---|---|
static class |
SplitPane.Divider |
Представляет отдельный разделитель в SplitPane. |
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
final ObjectProperty |
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
Краткое описание полей
Поля, объявленные в классе javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
Поля, объявленные в классе javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
SplitPane() |
Создаёт новый SplitPane без содержимого. |
SplitPane |
Создаёт новый SplitPane с заданными элементами, установленными в качестве содержимого для разделения между одним или несколькими разделителями. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static List |
getClassCssMetaData() |
Получает CssMetaData, связанный с этим классом, который может включать в себя CssMetaData своих суперклассов. |
List |
getControlCssMetaData() |
Возвращает список (неизменяемый) стилизуемых свойств управления CSS. |
double[] |
getDividerPositions() |
Возвращает массив double, содержащий положение каждого разделителя. |
ObservableList |
getDividers() |
Возвращает неизменяемый список всех разделителей в этом SplitPane. |
protected Boolean |
getInitialFocusTraversable() |
Возвращает начальное состояние focus traversable этого управления, для использования движком JavaFX CSS для правильной установки его начального значения. |
ObservableList |
getItems() |
Возвращает ObservableList, который может быть использован для изменения содержимого SplitPane. |
final Orientation |
getOrientation() |
Ориентация для SplitPane. |
static Boolean |
isResizableWithParent |
Возвращает true, если узел является изменяемым при изменении размера родительского контейнера, в противном случае false. |
final ObjectProperty |
orientationProperty() |
Ориентация для SplitPane. |
void |
setDividerPosition |
Устанавливает положение разделителя в указанном индексе разделителя. |
void |
setDividerPositions |
Устанавливает положение разделителя |
final void |
setOrientation |
Это свойство управляет отображением SplitPane для пользователя. |
static void |
setResizableWithParent |
Устанавливает узел в 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, requestFocusTraversal, 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
public SplitPane()
SplitPane
public SplitPane(Node... items)
- Параметры:
-
items- Элементы для размещения внутри SplitPane. - С:
- JavaFX 8u40
Подробное описание методов
setResizableWithParent
public static void setResizableWithParent(Node node, Boolean value)
- Параметры:
-
node- Узел в SplitPane. -
value- true, если узел может изменяться в размерах, или false, если нет. - С:
- JavaFX 2.1
isResizableWithParent
public static Boolean isResizableWithParent(Node node)
- Значение по умолчанию:
- 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.
orientationProperty
public final ObjectProperty<Orientation> orientationProperty()
- Возвращает:
- свойство ориентации для SplitPane
- См. также:
getItems
public ObservableList<Node> getItems()
- Возвращает:
- список элементов в этом SplitPane.
getDividers
public ObservableList<SplitPane.Divider> getDividers()
- Возвращает:
- список разделителей.
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, содержащий позиции каждого разделителя.
getClassCssMetaData
public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
CssMetaData, связанные с этим классом, которые могут включать CssMetaData его родительских классов.- Возвращает:
CssMetaData- С:
- JavaFX 8.0
getControlCssMetaData
public List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
- Переопределяет:
-
getControlCssMetaDataв классеControl - Возвращает:
- неизменяемый список свойств, стилизуемых CSS, для элемента управления
- С:
- JavaFX 8.0
getInitialFocusTraversable
protected Boolean getInitialFocusTraversable()
- Переопределяет:
-
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.