Spec-Zone.ru › OpenJavaFX 17

Класс StackPane

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.layout.Pane
javafx.scene.layout.StackPane
Все реализованные интерфейсы:
Styleable, EventTarget
Прямые известные подклассы:
TableHeaderRow
public class StackPane
extends Pane
StackPane выстраивает своих потомков в стопку спереди назад.

Порядок z-порядка потомков определяется порядком списка потомков, при этом первый потомок (с индексом 0) находится внизу, а последний – сверху. Если установлены отступ и/или отступы, потомки будут расположены внутри этих отступов.

Stackpane попытается переразмерять каждый потомок так, чтобы заполнить область содержимого. Если потомок не может быть изменен в размерах, чтобы заполнить stackpane (либо потому, что он не может быть изменен в размерах, либо из-за максимального размера), то он будет выровнен в области с помощью свойства выравнивания, которое по умолчанию равно Pos.CENTER.

Пример StackPane:


     StackPane stack = new StackPane();
     stack.getChildren().addAll(new Rectangle(100,100,Color.BLUE), new Label("Go!"));
 

StackPane выстраивает каждый управляемый потомок независимо от значения свойства visible потомка; неуправляемые потомки игнорируются.

StackPane может быть стилизован с помощью фонов и границ с помощью CSS. Подробнее см. Region.

Диапазон изменения размеров

Родительский элемент stackpane будет изменять размер stackpane в пределах диапазона изменения размеров stackpane во время вычисления расположения. По умолчанию stackpane вычисляет этот диапазон на основе своего содержимого, как показано в таблице ниже.

Таблица изменения размеров StackPane
ширина высота
минимальный левые/правые отступы плюс максимальная из минимальных ширины потомков. верхние/нижние отступы плюс максимальная из минимальных высот потомков.
предпочтительный левые/правые отступы плюс максимальная из предпочтительных ширины потомков. верхние/нижние отступы плюс максимальная из предпочтительных высот потомков.
максимальный Double.MAX_VALUE Double.MAX_VALUE

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

StackPane предоставляет свойства для непосредственного задания диапазона размеров. По умолчанию эти свойства имеют значение USE_COMPUTED_SIZE, однако приложение может задать им другие значения по мере необходимости:

     // ensure stackpane is never resized beyond it's preferred size
     stackpane.setMaxSize(Region.USE_PREF_SIZE, Region.USE_PREF_SIZE);
 
Приложения могут восстановить вычисленные значения, установив эти свойства обратно в USE_COMPUTED_SIZE.

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

Дополнительные ограничения вычисления расположения

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

Таблица ограничений вычисления расположения StackPane
Ограничение Тип Описание
выравнивание javafx.geometry.Pos Выравнивание потомка внутри stackpane.
отступ javafx.geometry.Insets Отступ вокруг внешней стороны потомка.

Примеры:

     // Align the title Label at the bottom-center of the stackpane
     Label title = new Label();
     StackPane.setAlignment(title, Pos.BOTTOM_CENTER);
     stackpane.getChildren.addAll(new ImageView(...), title);

     // Create an 8 pixel margin around a listview in the stackpane
     ListView list = new ListView();
     StackPane.setMargin(list, new Insets(8,8,8,8);
     stackpane.getChildren().add(list);
 
С:
JavaFX 2.0

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

Свойства
Тип Свойство Описание
ObjectProperty<Pos> alignment
Выравнивание дочерних элементов по ширине и высоте стека.

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

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

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

USE_COMPUTED_SIZE, USE_PREF_SIZE

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

BASELINE_OFFSET_SAME_AS_HEIGHT

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

Конструкторы
Конструктор Описание
StackPane()
Создает макет StackPane с выравниванием по центру по умолчанию.
StackPane​(Node... children)
Создает макет StackPane с выравниванием по центру по умолчанию.

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

Модификатор и тип Метод Описание
ObjectProperty<Pos> alignmentProperty()
Выравнивание дочерних элементов по ширине и высоте стека.
static void clearConstraints​(Node child)
Удаляет все ограничения стека для дочернего узла.
Pos getAlignment()
Получает значение свойства выравнивания.
static Pos getAlignment​(Node child)
Возвращает ограничение выравнивания дочернего элемента, если оно задано.
static List<CssMetaData<? extends Styleable,​?>> getClassCssMetaData()
Orientation getContentBias()
Возвращает ориентацию смещения изменения размера узла для целей макета.
List<CssMetaData<? extends Styleable,​?>> getCssMetaData()
Этот метод должен делегировать Node.getClassCssMetaData(), чтобы получить доступ к CssMetaData узла без рефлексии.
static Insets getMargin​(Node child)
Возвращает ограничения отступа дочернего элемента, если они заданы.
void setAlignment​(Pos value)
Устанавливает значение свойства выравнивания.
static void setAlignment​(Node child, Pos value)
Устанавливает выравнивание дочернего элемента, когда он находится в стеке.
static void setMargin​(Node child, Insets value)
Устанавливает отступ дочернего элемента, когда он находится в стеке.

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

getChildren

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

backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isResizable, 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, 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, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, 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, 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

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

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

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

getStyleableNode, getStyleClass

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

alignment

public final ObjectProperty<Pos> alignmentProperty
По умолчанию выравнивание дочерних элементов по ширине и высоте в области StackPane. Это может быть переопределено для отдельных дочерних элементов установкой ограничения выравнивания дочернего элемента.
См. также:
getAlignment(), setAlignment(Pos)

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

StackPane

public StackPane()
Создаёт макет StackPane с выравниванием по центру по умолчанию.

StackPane

public StackPane(Node... children)
Создаёт макет StackPane с выравниванием по центру по умолчанию.
Параметры:
children - Начальный набор дочерних элементов для этой области.
С:
JavaFX 8.0

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

setAlignment

public static void setAlignment(Node child, Pos value)
Устанавливает выравнивание дочернего элемента при включении в StackPane. Если установлено, переопределяет выравнивание по умолчанию StackPane. Установка значения null удалит ограничение.
Параметры:
child - дочерний узел StackPane
value - положение выравнивания дочернего элемента

getAlignment

public static Pos getAlignment(Node child)
Возвращает ограничение выравнивания дочернего элемента, если оно установлено.
Параметры:
child - дочерний узел StackPane
Возвращает:
положение выравнивания дочернего элемента или null, если выравнивание не было установлено

setMargin

public static void setMargin(Node child, Insets value)
Устанавливает отступ для дочернего элемента, когда он находится в StackPane. Если установлено, StackPane расположит дочерний элемент с отступом вокруг него. Установка значения null удалит ограничение.
Параметры:
child - дочерний узел StackPane
value - отступ вокруг дочернего элемента

getMargin

public static Insets getMargin(Node child)
Возвращает ограничения отступа дочернего элемента, если они установлены.
Параметры:
child - дочерний узел StackPane
Возвращает:
отступ дочернего элемента или null, если отступ не был установлен

clearConstraints

public static void clearConstraints(Node child)
Удаляет все ограничения StackPane из дочернего узла.
Параметры:
child - дочерний узел

alignmentProperty

public final ObjectProperty<Pos> alignmentProperty()
По умолчанию выравнивание дочерних элементов по ширине и высоте в области StackPane. Это может быть переопределено для отдельных дочерних элементов установкой ограничения выравнивания дочернего элемента.
См. также:
getAlignment(), setAlignment(Pos)

setAlignment

public final void setAlignment(Pos value)
Устанавливает значение свойства alignment.
Описание свойства:
По умолчанию выравнивание дочерних элементов по ширине и высоте в области StackPane. Это может быть переопределено для отдельных дочерних элементов установкой ограничения выравнивания дочернего элемента.

getAlignment

public final Pos getAlignment()
Получает значение свойства alignment.
Описание свойства:
По умолчанию выравнивание дочерних элементов по ширине и высоте в области StackPane. Это может быть переопределено для отдельных дочерних элементов установкой ограничения выравнивания дочернего элемента.

getContentBias

public Orientation getContentBias()
Описание скопировано из класса: Node
Возвращает ориентацию смещения изменения размера узла в целях размещения. Если у типа узла нет смещения, возвращает null. Если узел масштабируется и его высота зависит от его ширины, возвращает HORIZONTAL, в противном случае, если его ширина зависит от его высоты, возвращает VERTICAL.

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

Переопределяет:
getContentBias в классе Node
Возвращает:
первое ненулевое смещение contentBias управляемых дочерних элементов или null, если управляемые дочерние элементы не имеют смещения content bias.
См. также:
Node.isResizable(), Node.minWidth(double), Node.minHeight(double), Node.prefWidth(double), Node.prefHeight(double), Node.maxWidth(double), Node.maxHeight(double)

getClassCssMetaData

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

getCssMetaData

public List<CssMetaData<? extends Styleable,?>> getCssMetaData()
Этот метод должен делегировать Node.getClassCssMetaData(), чтобы доступ к CssMetaData узла Node был возможен без необходимости в рефлексии.
Определено в:
getCssMetaData в интерфейсе Styleable
Переопределяет:
getCssMetaData в классе Region
Возвращает:
CssMetaData, связанная с этим узлом, которая может включать CssMetaData его суперклассов.
С:
JavaFX 8.0

© 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