- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Parent
-
- javafx.scene.Group
-
- All Implemented Interfaces:
-
Styleable
,EventTarget
@DefaultProperty("children") public class Group extends Parent
一个Group
节点包含一个可观察的子节点列表,每当呈现该节点时,它们按顺序渲染。A
Group
将承担其子女的集体界限,不能直接调整。应用于
Group
任何转换,效果或状态将应用于该组的所有子项。 这种转变和效果不会被纳入本集团的布局范围,但是如果转换和效果直接针对本集团的子女,那么这些转换和效果将被纳入本集团的布局范围。默认情况下,
Group
将在布局过程中将其托管可调整大小的孩子“自动调整”为其首选大小,以确保“区域”和“控件”的状态发生变化。 如果应用程序需要禁用此自动调整大小的行为,那么应将autoSizeChildren
设置为false
并了解如果孩子的首选大小更改,则不会自动调整大小(因此请注意!)。组示例:
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); }
- 从以下版本开始:
- JavaFX 2.0
-
-
Property Summary
Properties Type Property 描述 BooleanProperty
autoSizeChildren
控制此Group
是否会在布局过程中自动将任何受管理的可调整大小的儿童调整为其首选大小。-
Properties inherited from class 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
-
Properties inherited from class javafx.scene.Parent
needsLayout
-
-
Field Summary
-
Fields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 BooleanProperty
autoSizeChildrenProperty()
控制此Group
是否会在布局过程中自动将任何受管理的可调整大小的儿童调整为首选大小。ObservableList<Node>
getChildren()
获取这个Group
的孩子列表。boolean
isAutoSizeChildren()
获取属性autoSizeChildren的值。protected void
layoutChildren()
组实现layoutChildren,以便每个小孩都调整为首选大小,如果小孩可调整大小。double
minHeight(double width)
返回节点在布局计算中使用的最小高度。double
minWidth(double height)
返回节点在布局计算中使用的最小宽度。double
prefHeight(double width)
组定义优选高度只是其布局界限的高度,反过来只是其所有子项的位置和高度的总和。double
prefWidth(double height)
组将首选宽度定义为其布局边界的宽度,而宽度又是其所有子项的位置和宽度之和。void
setAutoSizeChildren(boolean value)
设置属性autoSizeChildren的值。-
Methods inherited from class 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, getClassCssMetaData, getClip, getContentBias, getCssMetaData, 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, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isResizable, 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, maxHeight, maxWidth, 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, resize, 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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from class javafx.scene.Parent
computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getBaselineOffset, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
-
Methods inherited from interface javafx.css.Styleable
getStyleableNode
-
-
-
-
Property Detail
-
autoSizeChildren
public final BooleanProperty autoSizeChildrenProperty
控制此Group
是否会在布局过程中自动将任何受管理的可调整大小的儿童调整为首选大小。 如果设置为false
,则应用程序负责设置此组可调整大小的子项的大小,否则这样的节点可能会以零宽度/高度结尾,并且将不可见。 该变量对不可调整大小的内容节点(Shape,Text等)没有影响。- Default value:
- 真正
- 另请参见:
-
isAutoSizeChildren()
,setAutoSizeChildren(boolean)
-
-
构造方法详细信息
-
Group
public Group()
构建一个组。
-
Group
public Group(Node... children)
构建一个由儿童组成的小组。- 参数
-
children
- 儿童。
-
Group
public Group(Collection<Node> children)
构建由给定的孩子组成的组。- 参数
-
children
- 小组的孩子 - 异常
-
NullPointerException
- 如果指定的集合为空 - 从以下版本开始:
- JavaFX 8.0
-
-
方法详细信息
-
setAutoSizeChildren
public final void setAutoSizeChildren(boolean value)
设置属性autoSizeChildren的值。- Property description:
-
控制此
Group
是否会在布局过程中自动将任何受管理的可调整大小的儿童调整为首选大小。 如果设置为false
,则应用程序负责设置此组可调整大小的子项的大小,否则这样的节点可能会以零宽度/高度结尾,并且将不可见。 该变量对不可调整大小的内容节点(Shape,Text等)没有影响。 - Default value:
- 真正
-
isAutoSizeChildren
public final boolean isAutoSizeChildren()
获取属性autoSizeChildren的值。- Property description:
-
控制此
Group
是否会在布局过程中自动将任何受管理的可调整大小的儿童调整为首选大小。 如果设置为false
,则应用程序负责设置此组可调整大小的子项的大小,否则这样的节点可能会以零宽度/高度结尾,并且将不可见。 该变量对不可调整大小的内容节点(Shape,Text等)没有影响。 - Default value:
- 真正
-
autoSizeChildrenProperty
public final BooleanProperty autoSizeChildrenProperty()
控制此Group
是否会在布局过程中自动将任何受管理的可调整大小的儿童调整为首选大小。 如果设置为false
,则应用程序负责设置此组可调整大小的子项的大小,否则这样的节点可能会以零宽度/高度结尾,并且将不可见。 该变量对不可调整大小的内容节点(Shape,Text等)没有影响。- Default value:
- 真正
- 另请参见:
-
isAutoSizeChildren()
,setAutoSizeChildren(boolean)
-
getChildren
public ObservableList<Node> getChildren()
获取此Group
的孩子列表。- 重写:
-
getChildren
在Parent
- 结果
-
这个
Group
的孩子列表。
-
prefWidth
public double prefWidth(double height)
组将首选宽度定义为其布局边界的宽度,而宽度又是其所有子项的位置和宽度之和。 也就是说,首选宽度是它所在的宽度,因为不能调整组大小。 注意:由于autosize Group中的布局界限取决于要布局的组,所以如果需要,此调用将执行组的布局。- 重写:
-
prefWidth
在Parent
- 参数
-
height
- Group忽略此参数 - 结果
- 布局边界宽度
- 另请参见:
-
Node.isResizable()
,Node.getContentBias()
,Node.autosize()
-
prefHeight
public double prefHeight(double width)
组定义优选高度只是其布局界限的高度,反过来只是其所有子项的位置和高度的总和。 也就是说,首选高度是它所在的高度,因为一个组无法调整大小。 注意:由于autosize Group中的布局界限取决于要布局的组,所以如果需要,此调用将执行组的布局。- 重写:
-
prefHeight
在Parent
- 参数
-
width
- Group忽略此参数 - 结果
- 布局界定高度
- 另请参见:
-
Node.getContentBias()
,Node.autosize()
-
minHeight
public double minHeight(double width)
描述从类别复制:Node
返回节点在布局计算中使用的最小高度。 如果节点可调整大小,则父节点不应该将其高度调整为小于该值的大小。 如果节点不可调整大小,返回其layoutBounds高度。调用此方法的布局代码应首先检查节点的内容偏差。 如果节点具有水平的内容偏置,则呼叫者应该传递最小高度应该基于的宽度值。 如果节点具有垂直或空的内容偏置,则调用者应该传入-1。
具有水平内容偏置的节点子类应该符合宽度参数,不管是-1还是正值。 所有其他子类可以忽略width参数(这可能是-1)。
如果节点的
Node.maxHeight(double)
低于此数字,则minHeight
优先。 这意味着Node不应该调整大小低于minHeight
。- 重写:
-
minHeight
在Parent
- 参数
-
width
- 如果最小高度取决于应该使用的宽度 - 结果
- 在布局期间节点应该调整大小的最小高度结果将不会是NaN,也不会是负数。
- 另请参见:
-
Node.isResizable()
,Node.getContentBias()
-
minWidth
public double minWidth(double height)
描述从类别复制:Node
返回节点在布局计算中使用的最小宽度。 如果节点可调整大小,则其父值不应该调整其小于此值的宽度。 如果节点不可调整,则返回其layoutBounds宽度。调用此方法的布局代码应首先检查节点的内容偏差。 如果节点具有垂直的内容偏置,则呼叫者应该传入最小宽度应该基于的高度值。 如果节点具有水平或空的内容偏置,则调用者应该传入-1。
具有垂直内容偏置的节点子类应该尊重height参数,不管是-1还是正值。 所有其他子类可以忽略height参数(这可能是-1)。
如果节点的
Node.maxWidth(double)
低于此数,则minWidth
优先。 这意味着节点不应该被调整到低于minWidth
。- 重写:
-
minWidth
在Parent
- 参数
-
height
- 如果最小宽度取决于应该使用的高度 - 结果
- 布局期间节点应该调整大小的最小宽度。 结果永远不会是NaN,也不会是负面的。
- 另请参见:
-
Node.isResizable()
,Node.getContentBias()
-
layoutChildren
protected void layoutChildren()
组实现layoutChildren,以便每个小孩都调整为首选大小,如果小孩可调整大小。 不可调整大小的孩子被遗弃。 如果autoSizeChildren
为false,则此方法中Group不执行任何操作。- 重写:
-
layoutChildren
在Parent
-
-