Uses of Interface javax.swing.text.TabExpander (Java Platform SE 8 )
Date: 2026-04-24

## Uses of Interface
javax.swing.text.TabExpander

- Packages that use TabExpander
  Package | Description
  --- | ---
  javax.swing.text | Provides classes and interfaces that deal with editable and noneditable text components.

- - ### Uses of TabExpander in javax.swing.text

    Classes in javax.swing.text that implement TabExpander
    Modifier and Type | Class and Description
    --- | ---
    `class` | `FieldView` Extends the multi-line plain text view to be suitable for a single-line editor view.
    `class` | `ParagraphView` View of a simple line-wrapping paragraph that supports multiple fonts, colors, components, icons, etc.
    `class` | `PasswordView` Implements a View suitable for use in JPasswordField UI implementations.
    `class` | `PlainView` Implements View interface for a simple multi-line text view that has text in one font and color.
    `class` | `WrappedPlainView` View of plain text (text with only one font and color) that does line-wrapping.

    Methods in javax.swing.text that return TabExpander
    Modifier and Type | Method and Description
    --- | ---
    `TabExpander` | GlyphView.`getTabExpander()` Fetch the TabExpander to use if tabs are present in this view.

    Methods in javax.swing.text with parameters of type TabExpander
    Modifier and Type | Method and Description
    --- | ---
    `static int` | Utilities.`drawTabbedText(Segment s, int x, int y, Graphics g, TabExpander e, int startOffset)` Draws the given text, expanding any tabs that are contained using the given tab expansion technique.
    `static int` | Utilities.`getBreakLocation(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset)` Determine where to break the given text to fit within the given span.
    `abstract float` | GlyphView.GlyphPainter.`getSpan(GlyphView v, int p0, int p1, TabExpander e, float x)` Determine the span the glyphs given a start location (for tab expansion).
    `float` | GlyphView.`getTabbedSpan(float x, TabExpander e)` Determines the desired span when using the given tab expansion implementation.
    `float` | TabableView.`getTabbedSpan(float x, TabExpander e)` Determines the desired span when using the given tab expansion implementation.
    `static int` | Utilities.`getTabbedTextOffset(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset)` Determines the relative offset into the given text that best represents the given span in the view coordinate system.
    `static int` | Utilities.`getTabbedTextOffset(Segment s, FontMetrics metrics, int x0, int x, TabExpander e, int startOffset, boolean round)`
    `static int` | Utilities.`getTabbedTextWidth(Segment s, FontMetrics metrics, int x, TabExpander e, int startOffset)` Determines the width of the given segment of text taking tabs into consideration.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.