- 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.getItems().add(new Button("Button One")); final StackPane sp2 = new StackPane(); sp2.getItems().add(new Button("Button Two")); final StackPane sp3 = new StackPane(); sp3.getItems().add(new Button("Button Three")); sp.getItems().addAll(sp1, sp2, sp3); sp.setDividerPositions(0.3f, 0.6f, 0.9f);- С момента:
- JavaFX 2.0
-
Краткое описание свойств
Свойства Тип Свойство Описание 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, 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 classSplitPane.DividerПредставляет один разделитель в SplitPane.
-
Краткое описание полей
-
Наследуемые поля от класса javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZE
-
Наследуемые поля от класса javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
-
Краткое описание методов
Все методыСтатические методыМетоды экземпляраКонкретные методы Модификатор и тип Метод Описание protected Skin<?>createDefaultSkin()Создает новый экземпляр стандартной темы для данного элемента управления.static List<CssMetaData<? extends Styleable,?>>getClassCssMetaData()List<CssMetaData<? extends Styleable,?>>getControlCssMetaData()double[]getDividerPositions()Возвращает массив double, содержащий положение каждого разделителя.ObservableList<SplitPane.Divider>getDividers()Возвращает неизменяемый список всех разделителей в SplitPane.protected BooleangetInitialFocusTraversable()Возвращает начальное состояние фокусируемого перемещения данного элемента управления, для использования движком JavaFX CSS для правильной установки его начального значения.ObservableList<Node>getItems()Возвращает ObservableList, который может использоваться для изменения содержимого SplitPane.OrientationgetOrientation()Направление SplitPane.static BooleanisResizableWithParent(Node node)Возвращает true, если узел масштабируется, когда родительский контейнер масштабируется, иначе false.ObjectProperty<Orientation>orientationProperty()Направление SplitPane.voidsetDividerPosition(int dividerIndex, double position)Устанавливает положение разделителя в указанном индексе разделителя.voidsetDividerPositions(double... positions)Устанавливает положение разделителяvoidsetOrientation(Orientation value)Данное свойство контролирует, как SplitPane должен отображаться пользователю.static voidsetResizableWithParent(Node node, Boolean value)Устанавливает, что узел в SplitPane масштабируется или нет, когда SplitPane масштабируется.-
Наследуемые методы от класса javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty
-
Наследуемые методы от класса javafx.scene.layout.Region
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, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
-
Наследуемые методы от класса javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, 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, 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, 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, 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.- Возвращает:
- свойство orientation для SplitPane
-
-
Подробности конструктора
-
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.- Возвращает:
- свойство orientation для SplitPane
-
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, содержащий положение каждого разделителя.
-
createDefaultSkin
protected Skin<?> createDefaultSkin()
Создаёт новый экземпляр стандартной темы для этого элемента управления. Вызывается для создания темы для элемента управления, если тема не задана через CSS-fx-skinили не установлена явно в подклассе с помощьюsetSkin(...).- Переопределяет:
-
createDefaultSkinв классеControl - Возвращает:
- новый экземпляр стандартной темы для этого элемента управления. Если null, то элемент управления не будет иметь темы, если не будет предоставлен CSS.
-
getClassCssMetaData
public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
- Возвращает:
- CssMetaData, связанный с этим классом, который может включать CssMetaData его суперклассов.
- С момента:
- JavaFX 8.0
-
getControlCssMetaData
public List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()
- Переопределяет:
-
getControlCssMetaDataв классеControl - Возвращает:
- неизменяемый список стилизуемых свойств элементов управления CSS
- С момента:
- JavaFX 8.0
-
getInitialFocusTraversable
protected Boolean getInitialFocusTraversable()
Возвращает начальное состояние фокусируемости этого элемента управления, для использования движком JavaFX CSS для правильной установки его начального значения. Этот метод переопределяется, так как по умолчанию элементы управления пользовательского интерфейса имеют focus traversable, установленное в 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.