- All Implemented Interfaces:
- Styleable,- EventTarget
Text nodes in a single text flow.
 TextFlow uses the text and the font of each Text node inside of it,
 plus its own width and text alignment to determine the location for each child.
 A single Text node can span over several lines due to wrapping, and
 the visual location of the Text node can differ from the logical location
 due to bidi reordering.
 
 Any Node other than Text will be treated as an embedded object in the
 text layout. It will be inserted in the content using its preferred width,
 height, and baseline offset.
 
 When a Text node is inside a TextFlow, some of its properties are ignored.
 For example, the x and y properties of the Text node are ignored since
 the location of the node is determined by the parent. Likewise, the wrapping
 width in the Text node is ignored since the width used for wrapping
 is the TextFlow's width. The value of the pickOnBounds property
 of a Text node is set to false when it is laid out by the
 TextFlow. This happens because the content of a single Text node can be
 split and placed in different locations in the TextFlow (usually due to
 line breaking and bidi reordering).
 
 The wrapping width of the layout is determined by the region's current width.
 It can be specified by the application by setting the TextFlow's preferred
 width. If no wrapping is desired, the application can either set the preferred
 with to Double.MAX_VALUE or
 Region.USE_COMPUTED_SIZE.
 
 Paragraphs are separated by '\n' present in any Text child.
 
Example of a TextFlow:
     Text text1 = new Text("Big italic red text");
     text1.setFill(Color.RED);
     text1.setFont(Font.font("Helvetica", FontPosture.ITALIC, 40));
     Text text2 = new Text(" little bold blue text");
     text2.setFill(Color.BLUE);
     text2.setFont(Font.font("Helvetica", FontWeight.BOLD, 10));
     TextFlow textFlow = new TextFlow(text1, text2);
 
 TextFlow lays out each managed child regardless of the child's visible property value;
 unmanaged children are ignored for all layout calculations.
 TextFlow may be styled with backgrounds and borders using CSS. See its
 Region superclass for details.
Resizable Range
 A TextFlow's parent will resize the TextFlow within the TextFlow's range
 during layout. By default, the TextFlow computes this range based on its content
 as outlined in the tables below.
 
| width | height | |
|---|---|---|
| minimum | left/right insets | top/bottom insets plus the height of the text content | 
| preferred | left/right insets plus the width of the text content | top/bottom insets plus the height of the text content | 
| maximum | Double.MAX_VALUE | Double.MAX_VALUE | 
 A TextFlow's unbounded maximum width and height are an indication to the parent that
 it may be resized beyond its preferred size to fill whatever space is assigned to it.
 
 TextFlow provides properties for setting the size range directly. These
 properties default to the sentinel value Region.USE_COMPUTED_SIZE, however the
 application may set them to other values as needed:
 
     textflow.setMaxWidth(500);
 Region.USE_COMPUTED_SIZE.
 
 TextFlow does not clip its content by default, so it is possible that children's
 bounds may extend outside of its own bounds if a child's preferred size is larger than
 the space the TextFlow has to allocate for it.
- Since:
- JavaFX 8.0
- 
Property SummaryPropertiesTypePropertyDescriptionfinal DoublePropertyDefines the vertical space in pixel between lines.final IntegerPropertyThe size of a tab stop in spaces.final ObjectProperty<TextAlignment>Defines horizontal text alignment.Properties declared in class javafx.scene.layout.Regionbackground, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties declared in class javafx.scene.ParentneedsLayoutProperties declared in class javafx.scene.NodeaccessibleHelp, 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
- 
Field SummaryFields declared in class javafx.scene.layout.RegionUSE_COMPUTED_SIZE, USE_PREF_SIZEFields declared in class javafx.scene.NodeBASELINE_OFFSET_SAME_AS_HEIGHT
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptioncaretShape(int charIndex, boolean leading) Returns shape of caret in local coordinates.final doubleCalculates the baseline offset based on the first managed child.static List<CssMetaData<? extends Styleable,?>> Gets theCssMetaDataassociated with this class, which may include theCssMetaDataof its superclasses.final doubleGets the value of thelineSpacingproperty.final intGets the value of thetabSizeproperty.final TextAlignmentGets the value of thetextAlignmentproperty.final HitInfoMaps local point toHitInfoin the content.final DoublePropertyDefines the vertical space in pixel between lines.final PathElement[]rangeShape(int start, int end) Returns shape for the range of the text in local coordinates.final voidsetLineSpacing(double spacing) Sets the value of thelineSpacingproperty.final voidsetTabSize(int spaces) Sets the value of thetabSizeproperty.final voidsetTextAlignment(TextAlignment value) Sets the value of thetextAlignmentproperty.final IntegerPropertyThe size of a tab stop in spaces.final ObjectProperty<TextAlignment>Defines horizontal text alignment.final PathElement[]underlineShape(int start, int end) Returns the shape for the underline in local coordinates.Methods declared in class javafx.scene.layout.PanegetChildrenMethods declared in class javafx.scene.layout.RegionbackgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getBackground, getBorder, getCssMetaData, 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, widthPropertyMethods declared in class javafx.scene.ParentgetChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, layoutChildren, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods declared in class javafx.scene.NodeaccessibleHelpProperty, 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, getContentBias, 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, visiblePropertyMethods declared in class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods declared in interface javafx.css.StyleablegetStyleableNode
- 
Property Details- 
textAlignmentDefines horizontal text alignment.- Default value:
- TextAlignment.LEFT
- See Also:
 
- 
lineSpacingDefines the vertical space in pixel between lines.- Default value:
- 0
- Since:
- JavaFX 8.0
- See Also:
 
- 
tabSizeThe size of a tab stop in spaces. Values less than 1 are treated as 1. This value overrides thetabSizeof containedTextnodes.- Default value:
- 8
- Since:
- 14
- See Also:
 
 
- 
- 
Constructor Details- 
TextFlowpublic TextFlow()Creates an empty TextFlow layout.
- 
TextFlowCreates a TextFlow layout with the given children.- Parameters:
- children- children.
 
 
- 
- 
Method Details- 
hitTestMaps local point toHitInfoin the content.- Parameters:
- point- the specified point to be tested
- Returns:
- a HitInforepresenting the character index found
- Since:
- 9
 
- 
caretShapeReturns shape of caret in local coordinates.- Parameters:
- charIndex- the character index for the caret
- leading- whether the caret is biased on the leading edge of the character
- Returns:
- an array of PathElementwhich can be used to create aShape
- Since:
- 9
 
- 
rangeShapeReturns shape for the range of the text in local coordinates.- Parameters:
- start- the beginning character index for the range
- end- the end character index (non-inclusive) for the range
- Returns:
- an array of PathElementwhich can be used to create aShape
- Since:
- 9
 
- 
underlineShapeReturns the shape for the underline in local coordinates.- Parameters:
- start- the beginning character index for the range
- end- the end character index (non-inclusive) for the range
- Returns:
- an array of PathElementwhich can be used to create aShape
- Since:
- 21
 
- 
setTextAlignmentSets the value of thetextAlignmentproperty.- Property description:
- Defines horizontal text alignment.
- Default value:
- TextAlignment.LEFT
- Parameters:
- value- the value for the- textAlignmentproperty
- See Also:
 
- 
getTextAlignmentGets the value of thetextAlignmentproperty.- Property description:
- Defines horizontal text alignment.
- Default value:
- TextAlignment.LEFT
- Returns:
- the value of the textAlignmentproperty
- See Also:
 
- 
textAlignmentPropertyDefines horizontal text alignment.- Default value:
- TextAlignment.LEFT
- Returns:
- the textAlignmentproperty
- See Also:
 
- 
setLineSpacingpublic final void setLineSpacing(double spacing) Sets the value of thelineSpacingproperty.- Property description:
- Defines the vertical space in pixel between lines.
- Default value:
- 0
- Parameters:
- spacing- the value for the- lineSpacingproperty
- Since:
- JavaFX 8.0
- See Also:
 
- 
getLineSpacingpublic final double getLineSpacing()Gets the value of thelineSpacingproperty.- Property description:
- Defines the vertical space in pixel between lines.
- Default value:
- 0
- Returns:
- the value of the lineSpacingproperty
- Since:
- JavaFX 8.0
- See Also:
 
- 
lineSpacingPropertyDefines the vertical space in pixel between lines.- Default value:
- 0
- Returns:
- the lineSpacingproperty
- Since:
- JavaFX 8.0
- See Also:
 
- 
tabSizePropertyThe size of a tab stop in spaces. Values less than 1 are treated as 1. This value overrides thetabSizeof containedTextnodes.- Default value:
- 8
- Returns:
- the tabSizeproperty
- Since:
- 14
- See Also:
 
- 
getTabSizepublic final int getTabSize()Gets the value of thetabSizeproperty.- Property description:
- The size of a tab stop in spaces.
 Values less than 1 are treated as 1. This value overrides the
 tabSizeof containedTextnodes.
- Default value:
- 8
- Returns:
- the value of the tabSizeproperty
- Since:
- 14
- See Also:
 
- 
setTabSizepublic final void setTabSize(int spaces) Sets the value of thetabSizeproperty.- Property description:
- The size of a tab stop in spaces.
 Values less than 1 are treated as 1. This value overrides the
 tabSizeof containedTextnodes.
- Default value:
- 8
- Parameters:
- spaces- the value for the- tabSizeproperty
- Since:
- 14
- See Also:
 
- 
getBaselineOffsetpublic final double getBaselineOffset()Description copied from class:ParentCalculates the baseline offset based on the first managed child. If there is no such child, returnsNode.getBaselineOffset().- Overrides:
- getBaselineOffsetin class- Parent
- Returns:
- baseline offset
 
- 
getClassCssMetaDataGets theCssMetaDataassociated with this class, which may include theCssMetaDataof its superclasses.- Returns:
- the CssMetaData
 
 
-