Класс StackPane
- Все реализованные интерфейсы:
-
Styleable,EventTarget
- Прямые известные подклассы:
TableHeaderRow
public class StackPane extends Pane
Порядок 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 вычисляет этот диапазон на основе своего содержимого, как указано в таблице ниже.
| ширина | высота | |
|---|---|---|
| минимальный | левые/правые отступы плюс наибольшая из минимальных ширин дочерних элементов. | верхние/нижние отступы плюс наибольшая из минимальных высот дочерних элементов. |
| предпочтительный | левые/правые отступы плюс наибольшая из предпочтительных ширин дочерних элементов. | верхние/нижние отступы плюс наибольшая из предпочтительных высот дочерних элементов. |
| максимальный | 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 предоставляет статический метод для его установки на дочерний элемент.
| Ограничение | Тип | Описание |
|---|---|---|
| alignment | javafx.geometry.Pos | Выравнивание дочернего элемента внутри StackPane. |
| margin | 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
Резюме свойств
| Тип | Свойство | Описание |
|---|---|---|
final ObjectProperty<Pos> |
alignment |
Значение выравнивания по умолчанию дочерних элементов по ширине и высоте StackPane. |
Свойства, объявленные в классе 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
Резюме конструкторов
| Конструктор | Описание |
|---|---|
StackPane() |
Создает макет StackPane с выравниванием по умолчанию CENTER. |
StackPane |
Создает макет StackPane с выравниванием по умолчанию CENTER. |
Резюме методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final ObjectProperty<Pos> |
alignmentProperty() |
Значение выравнивания по умолчанию дочерних элементов по ширине и высоте StackPane. |
static void |
clearConstraints |
Удаляет все ограничения StackPane от узла дочернего элемента. |
final Pos |
getAlignment() |
Возвращает значение свойства alignment. |
static Pos |
getAlignment |
Возвращает ограничение выравнивания дочернего элемента, если оно установлено. |
static List<CssMetaData<? extends Styleable, |
getClassCssMetaData() |
Возвращает связанное с этим классом CssMetaData, которое может включать CssMetaData его родительских классов. |
Orientation |
getContentBias() |
Возвращает ориентацию смещения изменения размера узла для целей макета. |
List<CssMetaData<? extends Styleable, |
getCssMetaData() |
Этот метод должен делегировать Node.getClassCssMetaData(), чтобы метаданные Css узла Node можно было получить без отражения. |
static Insets |
getMargin |
Возвращает ограничения отступа дочернего элемента, если они установлены. |
final void |
setAlignment |
Устанавливает значение свойства alignment. |
static void |
setAlignment |
Устанавливает выравнивание дочернего элемента при содержании его в StackPane. |
static void |
setMargin |
Устанавливает отступ для дочернего элемента при содержании его в StackPane. |
Методы, объявленные в классе 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, focusVisibleProperty, focusWithinProperty, 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, 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
Подробности свойства
alignment
public final ObjectProperty<Pos> alignmentProperty
- См. также:
Подробности конструкторов
StackPane
public StackPane()
StackPane
public StackPane(Node... children)
- Параметры:
-
children- Начальный набор дочерних элементов для этой панели. - С:
- JavaFX 8.0
Подробности методов
setAlignment
public static void setAlignment(Node child, Pos value)
- Параметры:
-
child- дочерний узел stackpane -
value- положение выравнивания для дочернего элемента
getAlignment
public static Pos getAlignment(Node child)
- Параметры:
-
child- дочерний узел stackpane - Возвращает:
- положение выравнивания дочернего элемента или null, если выравнивание не было установлено
setMargin
public static void setMargin(Node child, Insets value)
- Параметры:
-
child- дочерний узел stackpane -
value- отступ вокруг дочернего элемента
getMargin
public static Insets getMargin(Node child)
- Параметры:
-
child- дочерний узел stackpane - Возвращает:
- отступ для дочернего элемента или null, если отступ не был установлен
clearConstraints
public static void clearConstraints(Node child)
- Параметры:
-
child- дочерний узел
alignmentProperty
public final ObjectProperty<Pos> alignmentProperty()
- Возвращает:
- выравнивание дочерних элементов в этом stackpane
- См. также:
setAlignment
public final void setAlignment(Pos value)
alignment.- Описание свойства:
- По умолчанию выравнивание дочерних элементов по ширине и высоте области StackPane. Это может быть переопределено для отдельных дочерних элементов установкой ограничения выравнивания для дочернего элемента.
- Параметры:
-
value- значение для свойстваalignment - См. также:
getAlignment
public final Pos getAlignment()
alignment.- Описание свойства:
- По умолчанию выравнивание дочерних элементов по ширине и высоте области StackPane. Это может быть переопределено для отдельных дочерних элементов установкой ограничения выравнивания для дочернего элемента.
- Возвращает:
- значение свойства
alignment - См. также:
getContentBias
public Orientation getContentBias()
NodeПодклассы, которые изменяют размер, должны переопределять этот метод, чтобы вернуть соответствующее значение.
- Переопределяет:
-
getContentBiasв классеNode - Возвращает:
- первое ненулевое смещение содержимого управляемых дочерних элементов или null, если управляемые дочерние элементы не имеют смещения содержимого.
- См. также:
getClassCssMetaData
public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()
CssMetaData, связанное с этим классом, которое может включать в себя CssMetaData его суперклассов.- Возвращает:
CssMetaData- С:
- JavaFX 8.0
getCssMetaData
public List<CssMetaData<? extends Styleable,?>> getCssMetaData()
Node.getClassCssMetaData(), чтобы метаданные CSS узла Node можно было получить без необходимости в отражении.- Определено в:
-
getCssMetaDataв интерфейсеStyleable - Переопределяет:
-
getCssMetaDataв классеRegion - Возвращает:
- Метаданные CSS, связанные с этим узлом, которые могут включать в себя метаданные CSS его суперклассов.
- С:
- 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.