Module javafx.controls
Package javafx.scene.control

# Class TextArea

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.TextInputControl
javafx.scene.control.TextArea

All Implemented Interfaces:
  `Styleable`, `EventTarget`, `Skinnable`

public class TextArea extends TextInputControl
Text input component that allows a user to enter multiple lines of plain text. Unlike in previous releases of JavaFX, support for single line input is not available as part of the TextArea control, however this is the sole-purpose of the `TextField` control. Additionally, if you want a form of rich-text editing, there is also the `HTMLEditor` control.

TextArea supports the notion of showing `prompt text` to the user when there is no `text` already in the TextArea (either via the user, or set programmatically). This is a useful way of informing the user as to what is expected in the text area, without having to resort to `tooltips` or on-screen `labels`.

Since:
  JavaFX 2.0
See Also:
  - `TextField`

## Property Summary

Properties
Type
Property
Description
`final IntegerProperty`
`prefColumnCount`
The preferred number of text columns.
`final IntegerProperty`
`prefRowCount`
The preferred number of text rows.
`final DoubleProperty`
`scrollLeft`
The number of pixels by which the content is horizontally scrolled.
`final DoubleProperty`
`scrollTop`
The number of pixels by which the content is vertically scrolled.
`final BooleanProperty`
`wrapText`
If a run of text exceeds the width of the `TextArea`, then this variable indicates whether the text should wrap onto another line.

### Properties inherited from class javafx.scene.control.TextInputControl

`anchor, caretPosition, editable, font, length, promptText, redoable, selectedText, selection, textFormatter, text, undoable`

### Properties inherited from class javafx.scene.control.Control

`contextMenu, skin, tooltip`

### Properties inherited from class javafx.scene.layout.Region

`background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width`

### Properties inherited from class javafx.scene.Parent

`needsLayout`

### 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`

## Nested Class Summary

## Nested classes/interfaces inherited from class javafx.scene.control.TextInputControl

`TextInputControl.Content`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final int`
`DEFAULT_PREF_COLUMN_COUNT`
The default value for `prefColumnCount`.
`static final int`
`DEFAULT_PREF_ROW_COUNT`
The default value for `prefRowCount`.

### Fields inherited from class javafx.scene.layout.Region

`USE_COMPUTED_SIZE, USE_PREF_SIZE`

### Fields inherited from class javafx.scene.Node

`BASELINE_OFFSET_SAME_AS_HEIGHT`

## Constructor Summary

Constructors
Constructor
Description
`TextArea()`
Creates a `TextArea` with empty text content.
`TextArea(String text)`
Creates a `TextArea` with initial text content.

## Method Summary

Modifier and Type
Method
Description
`protected Skin<?>`
`createDefaultSkin()`
Create a new instance of the default skin for this control.
`static List<CssMetaData<? extends Styleable,?>>`
`getClassCssMetaData()`
`List<CssMetaData<? extends Styleable,?>>`
`getControlCssMetaData()`
`ObservableList<CharSequence>`
`getParagraphs()`
Returns an unmodifiable list of the character sequences that back the text area's content.
`final int`
`getPrefColumnCount()`
Gets the value of the `prefColumnCount` property.
`final int`
`getPrefRowCount()`
Gets the value of the `prefRowCount` property.
`final double`
`getScrollLeft()`
Gets the value of the `scrollLeft` property.
`final double`
`getScrollTop()`
Gets the value of the `scrollTop` property.
`final boolean`
`isWrapText()`
Gets the value of the `wrapText` property.
`final IntegerProperty`
`prefColumnCountProperty()`
The preferred number of text columns.
`final IntegerProperty`
`prefRowCountProperty()`
The preferred number of text rows.
`final DoubleProperty`
`scrollLeftProperty()`
The number of pixels by which the content is horizontally scrolled.
`final DoubleProperty`
`scrollTopProperty()`
The number of pixels by which the content is vertically scrolled.
`final void`
`setPrefColumnCount(int value)`
Sets the value of the `prefColumnCount` property.
`final void`
`setPrefRowCount(int value)`
Sets the value of the `prefRowCount` property.
`final void`
`setScrollLeft(double value)`
Sets the value of the `scrollLeft` property.
`final void`
`setScrollTop(double value)`
Sets the value of the `scrollTop` property.
`final void`
`setWrapText(boolean value)`
Sets the value of the `wrapText` property.
`final BooleanProperty`
`wrapTextProperty()`
If a run of text exceeds the width of the `TextArea`, then this variable indicates whether the text should wrap onto another line.

### Methods inherited from class javafx.scene.control.TextInputControl

`anchorProperty, appendText, backward, cancelEdit, caretPositionProperty, clear, commitValue, copy, cut, deleteNextChar, deletePreviousChar, deleteText, deleteText, deselect, editableProperty, end, endOfNextWord, executeAccessibleAction, extendSelection, fontProperty, forward, getAnchor, getCaretPosition, getContent, getFont, getLength, getPromptText, getSelectedText, getSelection, getText, getText, getTextFormatter, home, insertText, isEditable, isRedoable, isUndoable, lengthProperty, nextWord, paste, positionCaret, previousWord, promptTextProperty, queryAccessibleAttribute, redo, redoableProperty, replaceSelection, replaceText, replaceText, selectAll, selectBackward, selectedTextProperty, selectEnd, selectEndOfNextWord, selectForward, selectHome, selectionProperty, selectNextWord, selectPositionCaret, selectPreviousWord, selectRange, setEditable, setFont, setPromptText, setText, setTextFormatter, textFormatterProperty, textProperty, undo, undoableProperty`

### Methods inherited from class javafx.scene.control.Control

`computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, getBaselineOffset, getContextMenu, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, layoutChildren, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty`

### Methods inherited from class javafx.scene.layout.Region

`backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, 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`

### Methods inherited from class javafx.scene.Parent

`getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBounds`

### 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, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, 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, 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, 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, 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 interface javafx.css.Styleable

`getStyleableNode`

## Property Details

### wrapText

public final BooleanProperty wrapTextProperty
If a run of text exceeds the width of the `TextArea`, then this variable indicates whether the text should wrap onto another line.

See Also:
  - `isWrapText()`
  - `setWrapText(boolean)`
  - `wrapTextProperty()`

### prefColumnCount

public final IntegerProperty prefColumnCountProperty
The preferred number of text columns. This is used for calculating the `TextArea`'s preferred width.

See Also:
  - `getPrefColumnCount()`
  - `setPrefColumnCount(int)`
  - `prefColumnCountProperty()`

### prefRowCount

public final IntegerProperty prefRowCountProperty
The preferred number of text rows. This is used for calculating the `TextArea`'s preferred height.

See Also:
  - `getPrefRowCount()`
  - `setPrefRowCount(int)`
  - `prefRowCountProperty()`

### scrollTop

public final DoubleProperty scrollTopProperty
The number of pixels by which the content is vertically scrolled.

See Also:
  - `getScrollTop()`
  - `setScrollTop(double)`
  - `scrollTopProperty()`

### scrollLeft

public final DoubleProperty scrollLeftProperty
The number of pixels by which the content is horizontally scrolled.

See Also:
  - `getScrollLeft()`
  - `setScrollLeft(double)`
  - `scrollLeftProperty()`

## Field Details

### DEFAULT_PREF_COLUMN_COUNT

public static final int DEFAULT_PREF_COLUMN_COUNT
The default value for `prefColumnCount`.

See Also:
  - Constant Field Values

### DEFAULT_PREF_ROW_COUNT

public static final int DEFAULT_PREF_ROW_COUNT
The default value for `prefRowCount`.

See Also:
  - Constant Field Values

## Constructor Details

### TextArea

public TextArea()
Creates a `TextArea` with empty text content.

### TextArea

public TextArea(String text)
Creates a `TextArea` with initial text content.

Parameters:
  `text` - A string for text content.

## Method Details

### getParagraphs

public ObservableList<CharSequence> getParagraphs()
Returns an unmodifiable list of the character sequences that back the text area's content.

Returns:
  an unmodifiable list of the character sequences that back the text area's content

### wrapTextProperty

public final BooleanProperty wrapTextProperty()
If a run of text exceeds the width of the `TextArea`, then this variable indicates whether the text should wrap onto another line.

Returns:
  the `wrapText` property
See Also:
  - `isWrapText()`
  - `setWrapText(boolean)`

### isWrapText

public final boolean isWrapText()
Gets the value of the `wrapText` property.

Property description:
  If a run of text exceeds the width of the `TextArea`, then this variable indicates whether the text should wrap onto another line.
Returns:
  the value of the `wrapText` property
See Also:
  - `setWrapText(boolean)`
  - `wrapTextProperty()`

### setWrapText

public final void setWrapText(boolean value)
Sets the value of the `wrapText` property.

Property description:
  If a run of text exceeds the width of the `TextArea`, then this variable indicates whether the text should wrap onto another line.
Parameters:
  `value` - the value for the `wrapText` property
See Also:
  - `isWrapText()`
  - `wrapTextProperty()`

### prefColumnCountProperty

public final IntegerProperty prefColumnCountProperty()
The preferred number of text columns. This is used for calculating the `TextArea`'s preferred width.

Returns:
  the `prefColumnCount` property
See Also:
  - `getPrefColumnCount()`
  - `setPrefColumnCount(int)`

### getPrefColumnCount

public final int getPrefColumnCount()
Gets the value of the `prefColumnCount` property.

Property description:
  The preferred number of text columns. This is used for calculating the `TextArea`'s preferred width.
Returns:
  the value of the `prefColumnCount` property
See Also:
  - `setPrefColumnCount(int)`
  - `prefColumnCountProperty()`

### setPrefColumnCount

public final void setPrefColumnCount(int value)
Sets the value of the `prefColumnCount` property.

Property description:
  The preferred number of text columns. This is used for calculating the `TextArea`'s preferred width.
Parameters:
  `value` - the value for the `prefColumnCount` property
See Also:
  - `getPrefColumnCount()`
  - `prefColumnCountProperty()`

### prefRowCountProperty

public final IntegerProperty prefRowCountProperty()
The preferred number of text rows. This is used for calculating the `TextArea`'s preferred height.

Returns:
  the `prefRowCount` property
See Also:
  - `getPrefRowCount()`
  - `setPrefRowCount(int)`

### getPrefRowCount

public final int getPrefRowCount()
Gets the value of the `prefRowCount` property.

Property description:
  The preferred number of text rows. This is used for calculating the `TextArea`'s preferred height.
Returns:
  the value of the `prefRowCount` property
See Also:
  - `setPrefRowCount(int)`
  - `prefRowCountProperty()`

### setPrefRowCount

public final void setPrefRowCount(int value)
Sets the value of the `prefRowCount` property.

Property description:
  The preferred number of text rows. This is used for calculating the `TextArea`'s preferred height.
Parameters:
  `value` - the value for the `prefRowCount` property
See Also:
  - `getPrefRowCount()`
  - `prefRowCountProperty()`

### scrollTopProperty

public final DoubleProperty scrollTopProperty()
The number of pixels by which the content is vertically scrolled.

Returns:
  the `scrollTop` property
See Also:
  - `getScrollTop()`
  - `setScrollTop(double)`

### getScrollTop

public final double getScrollTop()
Gets the value of the `scrollTop` property.

Property description:
  The number of pixels by which the content is vertically scrolled.
Returns:
  the value of the `scrollTop` property
See Also:
  - `setScrollTop(double)`
  - `scrollTopProperty()`

### setScrollTop

public final void setScrollTop(double value)
Sets the value of the `scrollTop` property.

Property description:
  The number of pixels by which the content is vertically scrolled.
Parameters:
  `value` - the value for the `scrollTop` property
See Also:
  - `getScrollTop()`
  - `scrollTopProperty()`

### scrollLeftProperty

public final DoubleProperty scrollLeftProperty()
The number of pixels by which the content is horizontally scrolled.

Returns:
  the `scrollLeft` property
See Also:
  - `getScrollLeft()`
  - `setScrollLeft(double)`

### getScrollLeft

public final double getScrollLeft()
Gets the value of the `scrollLeft` property.

Property description:
  The number of pixels by which the content is horizontally scrolled.
Returns:
  the value of the `scrollLeft` property
See Also:
  - `setScrollLeft(double)`
  - `scrollLeftProperty()`

### setScrollLeft

public final void setScrollLeft(double value)
Sets the value of the `scrollLeft` property.

Property description:
  The number of pixels by which the content is horizontally scrolled.
Parameters:
  `value` - the value for the `scrollLeft` property
See Also:
  - `getScrollLeft()`
  - `scrollLeftProperty()`

### createDefaultSkin

protected Skin<?> createDefaultSkin()
Create a new instance of the default skin for this control. This is called to create a skin for the control if no skin is provided via CSS `-fx-skin` or set explicitly in a sub-class with `setSkin(...)`.

Overrides:
  `createDefaultSkin` in class `Control`
Returns:
  new instance of default skin for this control. If null then the control will have no skin unless one is provided by css.

### getClassCssMetaData

public static List<CssMetaData<? extends Styleable,?>> getClassCssMetaData()

Returns:
  The CssMetaData associated with this class, which may include the CssMetaData of its superclasses.
Since:
  JavaFX 8.0

### getControlCssMetaData

public List<CssMetaData<? extends Styleable,?>> getControlCssMetaData()

Overrides:
  `getControlCssMetaData` in class `TextInputControl`
Returns:
  unmodifiable list of the controls css styleable properties
Since:
  JavaFX 8.0