Package com.google.gwt.user.client.ui

## Class TextBox

- java.lang.Object
- - com.google.gwt.user.client.ui.UIObject
  - - com.google.gwt.user.client.ui.Widget
    - - com.google.gwt.user.client.ui.FocusWidget
      - - com.google.gwt.user.client.ui.ValueBoxBase<java.lang.String>
        - - com.google.gwt.user.client.ui.TextBoxBase
          - - com.google.gwt.user.client.ui.TextBox

- All Implemented Interfaces:
    `IsEditor<ValueBoxEditor<java.lang.String>>`, `HasAllDragAndDropHandlers`, `HasAllFocusHandlers`, `HasAllGestureHandlers`, `HasAllKeyHandlers`, `HasAllMouseHandlers`, `HasAllTouchHandlers`, `HasBlurHandlers`, `HasChangeHandlers`, `HasClickHandlers`, `HasDoubleClickHandlers`, `HasDragEndHandlers`, `HasDragEnterHandlers`, `HasDragHandlers`, `HasDragLeaveHandlers`, `HasDragOverHandlers`, `HasDragStartHandlers`, `HasDropHandlers`, `HasFocusHandlers`, `HasGestureChangeHandlers`, `HasGestureEndHandlers`, `HasGestureStartHandlers`, `HasKeyDownHandlers`, `HasKeyPressHandlers`, `HasKeyUpHandlers`, `HasMouseDownHandlers`, `HasMouseMoveHandlers`, `HasMouseOutHandlers`, `HasMouseOverHandlers`, `HasMouseUpHandlers`, `HasMouseWheelHandlers`, `HasTouchCancelHandlers`, `HasTouchEndHandlers`, `HasTouchMoveHandlers`, `HasTouchStartHandlers`, `HasAttachHandlers`, `HasValueChangeHandlers<java.lang.String>`, `HasHandlers`, `AutoDirectionHandler.Target`, `HasDirection`, `HasDirectionEstimator`, `EventListener`, `TakesValue<java.lang.String>`, `Focusable`, `HasEnabled`, `HasFocus`, `HasName`, `HasText`, `HasValue<java.lang.String>`, `HasVisibility`, `IsWidget`, `SourcesChangeEvents`, `SourcesClickEvents`, `SourcesFocusEvents`, `SourcesKeyboardEvents`, `SourcesMouseEvents`
  Direct Known Subclasses:
    `PasswordTextBox`

      public class TextBox
      extends TextBoxBase

  A standard single-line text box.

  ### CSS Style Rules

  - .gwt-TextBox { primary style }
  - .gwt-TextBox-readonly { dependent style set when the text box is read-only }

  ### Built-in Bidi Text Support

  This widget is capable of automatically adjusting its direction according to the input text. This feature is controlled by `ValueBoxBase.setDirectionEstimator(boolean)`, and is available by default when at least one of the application's locales is right-to-left.

  ### Example

  >     public class TextBoxExample implements EntryPoint {

  >       public void onModuleLoad() {
  >         // Make some text boxes. The password text box is identical to the text
  >         // box, except that the input is visually masked by the browser.
  >         PasswordTextBox ptb = new PasswordTextBox();
  >         TextBox tb = new TextBox();

  >         // TODO(ECC) must be tested.
  >         tb.addKeyPressHandler(new KeyPressHandler() {

  >           public void onKeyPress(KeyPressEvent event) {
  >             if (!Character.isDigit(event.getCharCode())) {
  >               ((TextBox) event.getSource()).cancelKey();
  >             }
  >           }
  >         });

  >         // Let's make an 80x50 text area to go along with the other two.
  >         TextArea ta = new TextArea();
  >         ta.setCharacterWidth(80);
  >         ta.setVisibleLines(50);

  >         // Add them to the root panel.
  >         VerticalPanel panel = new VerticalPanel();
  >         panel.add(tb);
  >         panel.add(ptb);
  >         panel.add(ta);
  >         RootPanel.get().add(panel);
  >       }
  >     }

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.TextBoxBase

      `TextBoxBase.TextAlignConstant`

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.ValueBoxBase

      `ValueBoxBase.TextAlignment`

    - ### Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject

      `UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled`

    - ### Nested classes/interfaces inherited from interface com.google.gwt.i18n.client.HasDirection

      `HasDirection.Direction`

  - ### Field Summary

    - ### Fields inherited from class com.google.gwt.user.client.ui.TextBoxBase

      `ALIGN_CENTER, ALIGN_JUSTIFY, ALIGN_LEFT, ALIGN_RIGHT`

    - ### Fields inherited from class com.google.gwt.user.client.ui.Widget

      `eventsToSink`

    - ### Fields inherited from class com.google.gwt.user.client.ui.UIObject

      `DEBUG_ID_PREFIX, MISSING_ELEMENT_ERROR, SETELEMENT_TWICE_ERROR`

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `` | `TextBox()` | Creates an empty text box.
    `protected` | `TextBox​(Element element)` | This constructor may be used by subclasses to explicitly use an existing element.
    `(package private)` | `TextBox​(Element element, java.lang.String styleName)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `getMaxLength()` | Gets the maximum allowable length of the text box.
    `int` | `getVisibleLength()` | Gets the number of visible characters in the text box.
    `void` | `setMaxLength​(int length)` | Sets the maximum allowable length of the text box.
    `void` | `setVisibleLength​(int length)` | Sets the number of visible characters in the text box.
    `static TextBox` | `wrap​(Element element)` | Creates a TextBox widget that wraps an existing <input type='text'> element.

    - ### Methods inherited from class com.google.gwt.user.client.ui.TextBoxBase

      `addChangeListener, getValue, setTextAlignment`

    - ### Methods inherited from class com.google.gwt.user.client.ui.ValueBoxBase

      `addChangeHandler, addValueChangeHandler, asEditor, cancelKey, getCursorPos, getDirection, getDirectionEstimator, getImpl, getName, getSelectedText, getSelectionLength, getText, getValueOrThrow, isReadOnly, onBrowserEvent, onLoad, removeChangeListener, selectAll, setAlignment, setCursorPos, setDirection, setDirectionEstimator, setDirectionEstimator, setKey, setName, setReadOnly, setSelectionRange, setText, setValue, setValue`

    - ### Methods inherited from class com.google.gwt.user.client.ui.FocusWidget

      `addBlurHandler, addClickHandler, addClickListener, addDoubleClickHandler, addDragEndHandler, addDragEnterHandler, addDragHandler, addDragLeaveHandler, addDragOverHandler, addDragStartHandler, addDropHandler, addFocusHandler, addFocusListener, addGestureChangeHandler, addGestureEndHandler, addGestureStartHandler, addKeyboardListener, addKeyDownHandler, addKeyPressHandler, addKeyUpHandler, addMouseDownHandler, addMouseListener, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseUpHandler, addMouseWheelHandler, addMouseWheelListener, addTouchCancelHandler, addTouchEndHandler, addTouchMoveHandler, addTouchStartHandler, getFocusImpl, getTabIndex, isEnabled, onAttach, removeClickListener, removeFocusListener, removeKeyboardListener, removeMouseListener, removeMouseWheelListener, setAccessKey, setEnabled, setFocus, setTabIndex`

    - ### Methods inherited from class com.google.gwt.user.client.ui.Widget

      `addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, ensureHandlers, fireEvent, getHandlerCount, getHandlerManager, getLayoutData, getParent, isAttached, isOrWasAttached, onDetach, onUnload, removeFromParent, replaceElement, setLayoutData, setParent, sinkEvents, unsinkEvents`

    - ### Methods inherited from class com.google.gwt.user.client.ui.UIObject

      `addStyleDependentName, addStyleName, ensureDebugId, ensureDebugId, ensureDebugId, getAbsoluteLeft, getAbsoluteTop, getElement, getOffsetHeight, getOffsetWidth, getStyleElement, getStyleName, getStyleName, getStylePrimaryName, getStylePrimaryName, getTitle, isVisible, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setElement, setHeight, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setTitle, setVisible, setVisible, setWidth, sinkBitlessEvent, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface com.google.gwt.event.shared.HasHandlers

      `fireEvent`

    - ### Methods inherited from interface com.google.gwt.event.dom.client.HasKeyUpHandlers

      `addKeyUpHandler`

    - ### Methods inherited from interface com.google.gwt.user.client.ui.SourcesChangeEvents

      `removeChangeListener`

- - ### Constructor Detail

    - #### TextBox

          public TextBox()

      Creates an empty text box.

    - #### TextBox

          protected TextBox​(Element element)

      This constructor may be used by subclasses to explicitly use an existing element. This element must be an <input> element whose type is 'text'.
      Parameters:
        `element` - the element to be used

    - #### TextBox

          TextBox​(Element element,
                  java.lang.String styleName)

  - ### Method Detail

    - #### wrap

          public static TextBox wrap​(Element element)

      Creates a TextBox widget that wraps an existing <input type='text'> element. This element must already be attached to the document. If the element is removed from the document, you must call `Widget.removeFromParent()`.
      Parameters:
        `element` - the element to be wrapped

    - #### getMaxLength

          public int getMaxLength()

      Gets the maximum allowable length of the text box.
      Returns:
        the maximum length, in characters

    - #### getVisibleLength

          public int getVisibleLength()

      Gets the number of visible characters in the text box.
      Returns:
        the number of visible characters

    - #### setMaxLength

          public void setMaxLength​(int length)

      Sets the maximum allowable length of the text box.
      Parameters:
        `length` - the maximum length, in characters

    - #### setVisibleLength

          public void setVisibleLength​(int length)

      Sets the number of visible characters in the text box.
      Parameters:
        `length` - the number of visible characters