@DefaultProperty(value="children") public class Group extends Parent
Group node contains an ObservableList of children that
are rendered in order whenever this node is rendered.
A Group will take on the collective bounds of its children and is
not directly resizable.
Any transform, effect, or state applied to a Group will be applied
to all children of that group. Such transforms and effects will NOT be included
in this Group's layout bounds, however if transforms and effects are set
directly on children of this Group, those will be included in this Group's layout bounds.
By default, a Group will "auto-size" its managed resizable
children to their preferred sizes during the layout pass to ensure that Regions
and Controls are sized properly as their state changes. If an application
needs to disable this auto-sizing behavior, then it should set autoSizeChildren
to false and understand that if the preferred size of the children
change, they will not automatically resize (so buyer beware!).
Group Example:
import javafx.scene.*;
import javafx.scene.paint.*;
import javafx.scene.shape.*;
import java.lang.Math;
Group g = new Group();
for (int i = 0; i < 5; i++) {
Rectangle r = new Rectangle();
r.setY(i * 20);
r.setWidth(100);
r.setHeight(10);
r.setFill(Color.RED);
g.getChildren().add(r);
}
| Type | Property and Description |
|---|---|
BooleanProperty |
autoSizeChildren
Controls whether or not this
Group will automatically resize any
managed resizable children to their preferred sizes
during the layout pass. |
needsLayoutblendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, 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, visible| Constructor and Description |
|---|
Group()
Constructs a group.
|
Group(Node... children)
Constructs a group consisting of children.
|
| Modifier and Type | Method and Description |
|---|---|
BooleanProperty |
autoSizeChildrenProperty()
Controls whether or not this
Group will automatically resize any
managed resizable children to their preferred sizes
during the layout pass. |
ObservableList<Node> |
getChildren()
Gets the list of children of this
Group. |
boolean |
isAutoSizeChildren()
Gets the value of the property autoSizeChildren.
|
protected void |
layoutChildren()
Invoked during the layout pass to layout the children in this
Parent. |
double |
prefHeight(double width)
Returns the node's preferred height for use in layout calculations.
|
double |
prefWidth(double height)
Returns the node's preferred width for use in layout calculations.
|
void |
setAutoSizeChildren(boolean value)
Sets the value of the property autoSizeChildren.
|
computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getBaselineOffset, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, minHeight, minWidth, needsLayoutProperty, requestLayout, setNeedsLayoutaddEventFilter, addEventHandler, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectProperty, eventDispatcherProperty, fireEvent, focusedProperty, focusTraversableProperty, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEventDispatcher, getId, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, 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, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getUserData, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isResizable, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToSceneTransformProperty, lookupAll, managedProperty, maxHeight, maxWidth, mouseTransparentProperty, 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, pickOnBoundsProperty, pressedProperty, relocate, removeEventFilter, removeEventHandler, requestFocus, resize, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, 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, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, visiblePropertypublic final BooleanProperty autoSizeChildrenProperty
Group will automatically resize any
managed resizable children to their preferred sizes
during the layout pass. If set to false, then the application is
responsible for setting the size of this Group's resizable children, otherwise
such nodes may end up with a zero width/height and will not be visible.
This variable has no effect on content nodes which are not resizable (Shape, Text, etc).isAutoSizeChildren(),
setAutoSizeChildren(boolean)public Group()
public Group(Node... children)
children - children.public final void setAutoSizeChildren(boolean value)
Group will automatically resize any
managed resizable children to their preferred sizes
during the layout pass. If set to false, then the application is
responsible for setting the size of this Group's resizable children, otherwise
such nodes may end up with a zero width/height and will not be visible.
This variable has no effect on content nodes which are not resizable (Shape, Text, etc).public final boolean isAutoSizeChildren()
Group will automatically resize any
managed resizable children to their preferred sizes
during the layout pass. If set to false, then the application is
responsible for setting the size of this Group's resizable children, otherwise
such nodes may end up with a zero width/height and will not be visible.
This variable has no effect on content nodes which are not resizable (Shape, Text, etc).public final BooleanProperty autoSizeChildrenProperty()
Group will automatically resize any
managed resizable children to their preferred sizes
during the layout pass. If set to false, then the application is
responsible for setting the size of this Group's resizable children, otherwise
such nodes may end up with a zero width/height and will not be visible.
This variable has no effect on content nodes which are not resizable (Shape, Text, etc).isAutoSizeChildren(),
setAutoSizeChildren(boolean)public ObservableList<Node> getChildren()
Group.getChildren in class ParentGroup.public double prefWidth(double height)
NodeLayout code which calls this method should first check the content-bias of the node. If the node has a vertical content-bias, then callers should pass in a height value that the preferred width should be based on. If the node has either a horizontal or null content-bias, then the caller should pass in -1.
Node subclasses with a vertical content-bias should honor the height parameter whether -1 or a positive value. All other subclasses may ignore the height parameter (which will likely be -1).
prefWidth in class Parentheight - the height that should be used if preferred width depends on itNode.isResizable(),
Node.getContentBias(),
Node.autosize()public double prefHeight(double width)
NodeLayout code which calls this method should first check the content-bias of the node. If the node has a horizontal content-bias, then callers should pass in a width value that the preferred height should be based on. If the node has either a vertical or null content-bias, then the caller should pass in -1.
Node subclasses with a horizontal content-bias should honor the height parameter whether -1 or a positive value. All other subclasses may ignore the height parameter (which will likely be -1).
prefHeight in class Parentwidth - the width that should be used if preferred height depends on itNode.getContentBias(),
Node.autosize()protected void layoutChildren()
ParentParent. By default it will only set the size of managed,
resizable content to their preferred sizes and does not do any node
positioning.
Subclasses should override this function to layout content as needed.
layoutChildren in class ParentCopyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms.