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
com.dlsc.gemsfx.ResizableTextArea
com.dlsc.gemsfx.LimitedTextArea
- All Implemented Interfaces:
javafx.css.Styleable,javafx.event.EventTarget,javafx.scene.control.Skinnable
A specialized text area view that imposes restrictions on the input text length, allowing
specification of minimum and maximum character limits. It provides the functionality to define
a range of allowed text lengths and supports the removal of specified strings by replacing them
with an empty string. This component is designed for scenarios where input text needs to adhere
to specific length requirements and certain substrings are not permitted.
If the text length range is not specified, the value of the text length indicator label will reflect the number of characters in the text area. If a range is specified, the label will show the difference between the current text length and the maximum allowed character count. Should the text exceed the allowed maximum, the label will display a negative number.
Use cases include form fields where input character count is restricted within a certain range for validation purposes, or text areas that need to filter out specific unwanted characters or phrases.
-
Property Summary
PropertiesTypePropertyDescriptionfinal javafx.beans.property.ObjectProperty<IntegerRange>The character range limit property defines the minimum and maximum number of characters allowed in the text area.final javafx.beans.property.ObjectProperty<LimitedTextArea.LengthDisplayMode>The length display mode property defines when the text length indicator label should be displayed.final javafx.beans.property.ReadOnlyBooleanPropertyA read-only property indicating whether the text content is over the maximum length or under the minimum length.final javafx.beans.property.BooleanPropertyfinal javafx.beans.property.StringPropertyThe tips property used to display a hint or description of the text area.final javafx.beans.property.DoublePropertyThe warning threshold is a value between 0 and 1.Properties inherited from class com.dlsc.gemsfx.ResizableTextArea
resizeHorizontal, resizeVerticalProperties inherited from class javafx.scene.control.TextArea
prefColumnCount, prefRowCount, scrollLeft, scrollTop, wrapTextProperties inherited from class javafx.scene.control.TextInputControl
anchor, caretPosition, editable, font, length, promptText, redoable, selectedText, selection, textFormatter, text, undoableProperties inherited from class javafx.scene.control.Control
contextMenu, skin, tooltipProperties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties inherited from class javafx.scene.Parent
needsLayoutProperties 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, 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 -
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class javafx.scene.control.TextInputControl
javafx.scene.control.TextInputControl.Content -
Field Summary
Fields inherited from class javafx.scene.control.TextArea
DEFAULT_PREF_COLUMN_COUNT, DEFAULT_PREF_ROW_COUNTFields inherited from class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZEFields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal javafx.beans.property.ObjectProperty<IntegerRange>The character range limit property defines the minimum and maximum number of characters allowed in the text area.protected javafx.scene.control.Skin<?>final IntegerRangeGets the value of the property characterRangeLimit.static List<javafx.css.CssMetaData<? extends javafx.css.Styleable,?>> List<javafx.css.CssMetaData<? extends javafx.css.Styleable,?>> final javafx.collections.ObservableList<String>Gets the value of the property lengthDisplayMode.final StringgetTips()Gets the value of the property tips.final doublefinal doubleGets the value of the property warningThreshold.final booleanGets the value of the property outOfRange.final booleanGets the value of the property showBottom.final javafx.beans.property.ObjectProperty<LimitedTextArea.LengthDisplayMode>The length display mode property defines when the text length indicator label should be displayed.final javafx.beans.property.ReadOnlyBooleanPropertyA read-only property indicating whether the text content is over the maximum length or under the minimum length.final voidsetCharacterRangeLimit(IntegerRange characterRangeLimit) Sets the value of the property characterRangeLimit.final voidsetLengthDisplayMode(LimitedTextArea.LengthDisplayMode lengthDisplayMode) Sets the value of the property lengthDisplayMode.final voidsetShowBottom(boolean showBottom) Sets the value of the property showBottom.final voidSets the value of the property tips.final voidsetWarningThreshold(double warningThreshold) Sets the value of the property warningThreshold.final javafx.beans.property.BooleanPropertyfinal javafx.beans.property.StringPropertyThe tips property used to display a hint or description of the text area.final javafx.beans.property.DoublePropertyThe warning threshold is a value between 0 and 1.Methods inherited from class com.dlsc.gemsfx.ResizableTextArea
getUserAgentStylesheet, isResizeHorizontal, isResizeVertical, resizeHorizontalProperty, resizeVerticalProperty, setResizeHorizontal, setResizeVerticalMethods inherited from class javafx.scene.control.TextArea
getParagraphs, getPrefColumnCount, getPrefRowCount, getScrollLeft, getScrollTop, isWrapText, prefColumnCountProperty, prefRowCountProperty, scrollLeftProperty, scrollTopProperty, setPrefColumnCount, setPrefRowCount, setScrollLeft, setScrollTop, setWrapText, wrapTextPropertyMethods 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, undoablePropertyMethods 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, tooltipPropertyMethods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, 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, widthPropertyMethods inherited from class javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods 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, focusVisibleProperty, focusWithinProperty, 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, 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, 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, visiblePropertyMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javafx.css.Styleable
getStyleableNode
-
Property Details
-
showBottom
public final javafx.beans.property.BooleanProperty showBottomProperty- See Also:
-
characterRangeLimit
The character range limit property defines the minimum and maximum number of characters allowed in the text area. -
tips
public final javafx.beans.property.StringProperty tipsPropertyThe tips property used to display a hint or description of the text area.- See Also:
-
outOfRange
public final javafx.beans.property.ReadOnlyBooleanProperty outOfRangePropertyA read-only property indicating whether the text content is over the maximum length or under the minimum length.- See Also:
-
lengthDisplayMode
public final javafx.beans.property.ObjectProperty<LimitedTextArea.LengthDisplayMode> lengthDisplayModePropertyThe length display mode property defines when the text length indicator label should be displayed.LimitedTextArea.LengthDisplayMode.AUTO,LimitedTextArea.LengthDisplayMode.ALWAYS_SHOW,LimitedTextArea.LengthDisplayMode.ALWAYS_HIDE -
warningThreshold
public final javafx.beans.property.DoubleProperty warningThresholdPropertyThe warning threshold is a value between 0 and 1. When the text length is greater than or equal to the maximum length times the warning threshold, the warning style will be applied.
-
-
Constructor Details
-
LimitedTextArea
public LimitedTextArea() -
LimitedTextArea
-
-
Method Details
-
createDefaultSkin
protected javafx.scene.control.Skin<?> createDefaultSkin()- Overrides:
createDefaultSkinin classResizableTextArea
-
showBottomProperty
public final javafx.beans.property.BooleanProperty showBottomProperty()- See Also:
-
isShowBottom
public final boolean isShowBottom()Gets the value of the property showBottom.- Property description:
-
setShowBottom
public final void setShowBottom(boolean showBottom) Sets the value of the property showBottom.- Property description:
-
getCharacterRangeLimit
Gets the value of the property characterRangeLimit.- Property description:
- The character range limit property defines the minimum and maximum number of characters allowed in the text area.
-
characterRangeLimitProperty
The character range limit property defines the minimum and maximum number of characters allowed in the text area. -
setCharacterRangeLimit
Sets the value of the property characterRangeLimit.- Property description:
- The character range limit property defines the minimum and maximum number of characters allowed in the text area.
-
getExcludedItems
-
getTips
Gets the value of the property tips.- Property description:
- The tips property used to display a hint or description of the text area.
-
tipsProperty
public final javafx.beans.property.StringProperty tipsProperty()The tips property used to display a hint or description of the text area.- See Also:
-
setTips
Sets the value of the property tips.- Property description:
- The tips property used to display a hint or description of the text area.
-
isOutOfRange
public final boolean isOutOfRange()Gets the value of the property outOfRange.- Property description:
- A read-only property indicating whether the text content is over the maximum length or under the minimum length.
-
outOfRangeProperty
public final javafx.beans.property.ReadOnlyBooleanProperty outOfRangeProperty()A read-only property indicating whether the text content is over the maximum length or under the minimum length.- See Also:
-
getLengthDisplayMode
Gets the value of the property lengthDisplayMode.- Property description:
- The length display mode property defines when the text length indicator label should be displayed.
LimitedTextArea.LengthDisplayMode.AUTO,LimitedTextArea.LengthDisplayMode.ALWAYS_SHOW,LimitedTextArea.LengthDisplayMode.ALWAYS_HIDE
-
lengthDisplayModeProperty
public final javafx.beans.property.ObjectProperty<LimitedTextArea.LengthDisplayMode> lengthDisplayModeProperty()The length display mode property defines when the text length indicator label should be displayed.LimitedTextArea.LengthDisplayMode.AUTO,LimitedTextArea.LengthDisplayMode.ALWAYS_SHOW,LimitedTextArea.LengthDisplayMode.ALWAYS_HIDE -
setLengthDisplayMode
Sets the value of the property lengthDisplayMode.- Property description:
- The length display mode property defines when the text length indicator label should be displayed.
LimitedTextArea.LengthDisplayMode.AUTO,LimitedTextArea.LengthDisplayMode.ALWAYS_SHOW,LimitedTextArea.LengthDisplayMode.ALWAYS_HIDE
-
getWarningThreshold
public final double getWarningThreshold()Gets the value of the property warningThreshold.- Property description:
- The warning threshold is a value between 0 and 1. When the text length is greater than or equal to the maximum length times the warning threshold, the warning style will be applied.
-
warningThresholdProperty
public final javafx.beans.property.DoubleProperty warningThresholdProperty()The warning threshold is a value between 0 and 1. When the text length is greater than or equal to the maximum length times the warning threshold, the warning style will be applied. -
setWarningThreshold
public final void setWarningThreshold(double warningThreshold) Sets the value of the property warningThreshold.- Property description:
- The warning threshold is a value between 0 and 1. When the text length is greater than or equal to the maximum length times the warning threshold, the warning style will be applied.
-
getValidWarningThreshold
public final double getValidWarningThreshold() -
getControlCssMetaData
- Overrides:
getControlCssMetaDatain classjavafx.scene.control.TextArea
-
getClassCssMetaData
-