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
`` `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
`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.user.client.ui.SourcesChangeEvents

`removeChangeListener`

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

`addKeyUpHandler`

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

`fireEvent`

### 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 `RootPanel.detachNow(Widget)`.

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