Uses of Interface javax.swing.border.Border (Java Platform SE 8 )
Date: 2026-07-22

## Uses of Interface
javax.swing.border.Border

- Packages that use Border
  Package | Description
  --- | ---
  javax.swing | Provides a set of "lightweight" (all-Java language) components that, to the maximum degree possible, work the same on all platforms.
  javax.swing.border | Provides classes and interface for drawing specialized borders around a Swing component.
  javax.swing.plaf | Provides one interface and many abstract classes that Swing uses to provide its pluggable look-and-feel capabilities.
  javax.swing.plaf.basic | Provides user interface objects built according to the Basic look and feel.
  javax.swing.plaf.metal | Provides user interface objects built according to the Java look and feel (once codenamed Metal), which is the default look and feel.
  javax.swing.table | Provides classes and interfaces for dealing with `javax.swing.JTable`.
  javax.swing.tree | Provides classes and interfaces for dealing with `javax.swing.JTree`.

- - ### Uses of Border in javax.swing

    Fields in javax.swing declared as Border
    Modifier and Type | Field and Description
    --- | ---
    `protected static Border` | DefaultListCellRenderer.`noFocusBorder`

    Methods in javax.swing that return Border
    Modifier and Type | Method and Description
    --- | ---
    `static Border` | BorderFactory.`createBevelBorder(int type)` Creates a beveled border of the specified type, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.
    `static Border` | BorderFactory.`createBevelBorder(int type, Color highlight, Color shadow)` Creates a beveled border of the specified type, using the specified highlighting and shadowing.
    `static Border` | BorderFactory.`createBevelBorder(int type, Color highlightOuter, Color highlightInner, Color shadowOuter, Color shadowInner)` Creates a beveled border of the specified type, using the specified colors for the inner and outer highlight and shadow areas.
    `static Border` | BorderFactory.`createDashedBorder(Paint paint)` Creates a dashed border of the specified `paint`.
    `static Border` | BorderFactory.`createDashedBorder(Paint paint, float length, float spacing)` Creates a dashed border of the specified `paint`, relative `length`, and relative `spacing`.
    `static Border` | BorderFactory.`createDashedBorder(Paint paint, float thickness, float length, float spacing, boolean rounded)` Creates a dashed border of the specified `paint`, `thickness`, line shape, relative `length`, and relative `spacing`.
    `static Border` | BorderFactory.`createEmptyBorder()` Creates an empty border that takes up no space.
    `static Border` | BorderFactory.`createEmptyBorder(int top, int left, int bottom, int right)` Creates an empty border that takes up space but which does no drawing, specifying the width of the top, left, bottom, and right sides.
    `static Border` | BorderFactory.`createEtchedBorder()` Creates a border with an "etched" look using the component's current background color for highlighting and shading.
    `static Border` | BorderFactory.`createEtchedBorder(Color highlight, Color shadow)` Creates a border with an "etched" look using the specified highlighting and shading colors.
    `static Border` | BorderFactory.`createEtchedBorder(int type)` Creates a border with an "etched" look using the component's current background color for highlighting and shading.
    `static Border` | BorderFactory.`createEtchedBorder(int type, Color highlight, Color shadow)` Creates a border with an "etched" look using the specified highlighting and shading colors.
    `static Border` | BorderFactory.`createLineBorder(Color color)` Creates a line border withe the specified color.
    `static Border` | BorderFactory.`createLineBorder(Color color, int thickness)` Creates a line border with the specified color and width.
    `static Border` | BorderFactory.`createLineBorder(Color color, int thickness, boolean rounded)` Creates a line border with the specified color, thickness, and corner shape.
    `static Border` | BorderFactory.`createLoweredBevelBorder()` Creates a border with a lowered beveled edge, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.
    `static Border` | BorderFactory.`createLoweredSoftBevelBorder()` Creates a beveled border with a lowered edge and softened corners, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.
    `static Border` | BorderFactory.`createRaisedBevelBorder()` Creates a border with a raised beveled edge, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.
    `static Border` | BorderFactory.`createRaisedSoftBevelBorder()` Creates a beveled border with a raised edge and softened corners, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.
    `static Border` | BorderFactory.`createSoftBevelBorder(int type)` Creates a beveled border of the specified type with softened corners, using brighter shades of the component's current background color for highlighting, and darker shading for shadows.
    `static Border` | BorderFactory.`createSoftBevelBorder(int type, Color highlight, Color shadow)` Creates a beveled border of the specified type with softened corners, using the specified highlighting and shadowing.
    `static Border` | BorderFactory.`createSoftBevelBorder(int type, Color highlightOuter, Color highlightInner, Color shadowOuter, Color shadowInner)` Creates a beveled border of the specified type with softened corners, using the specified colors for the inner and outer edges of the highlight and the shadow areas.
    `static Border` | BorderFactory.`createStrokeBorder(BasicStroke stroke)` Creates a border of the specified `stroke`.
    `static Border` | BorderFactory.`createStrokeBorder(BasicStroke stroke, Paint paint)` Creates a border of the specified `stroke` and `paint`.
    `Border` | JComponent.`getBorder()` Returns the border of this component or `null` if no border is currently set.
    `static Border` | UIManager.`getBorder(Object key)` Returns a border from the defaults.
    `Border` | UIDefaults.`getBorder(Object key)` If the value of `key` is a `Border` return it, otherwise return `null`.
    `static Border` | UIManager.`getBorder(Object key, Locale l)` Returns a border from the defaults that is appropriate for the given locale.
    `Border` | UIDefaults.`getBorder(Object key, Locale l)` If the value of `key` for the given `Locale` is a `Border` return it, otherwise return `null`.
    `Border` | JScrollPane.`getViewportBorder()` Returns the `Border` object that surrounds the viewport.

    Methods in javax.swing with parameters of type Border
    Modifier and Type | Method and Description
    --- | ---
    `static CompoundBorder` | BorderFactory.`createCompoundBorder(Border outsideBorder, Border insideBorder)` Creates a compound border specifying the border objects to use for the outside and inside edges.
    `static TitledBorder` | BorderFactory.`createTitledBorder(Border border)` Creates a new titled border with an empty title, the specified border object, the default text position (determined by the current look and feel), the default justification (leading), and the default font and text color (determined by the current look and feel).
    `static TitledBorder` | BorderFactory.`createTitledBorder(Border border, String title)` Adds a title to an existing border, with default positioning (determined by the current look and feel), default justification (leading) and the default font and text color (determined by the current look and feel).
    `static TitledBorder` | BorderFactory.`createTitledBorder(Border border, String title, int titleJustification, int titlePosition)` Adds a title to an existing border, with the specified positioning and using the default font and text color (determined by the current look and feel).
    `static TitledBorder` | BorderFactory.`createTitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont)` Adds a title to an existing border, with the specified positioning and font, and using the default text color (determined by the current look and feel).
    `static TitledBorder` | BorderFactory.`createTitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont, Color titleColor)` Adds a title to an existing border, with the specified positioning, font and color.
    `protected String` | JComponent.AccessibleJComponent.`getBorderTitle(Border b)` Recursively search through the border hierarchy (if it exists) for a TitledBorder with a non-null title.
    `void` | JLayer.`setBorder(Border border)` A non-`null` border, or non-zero insets, isn't supported, to prevent the geometry of this component from becoming complex enough to inhibit subclassing of `LayerUI` class.
    `void` | JComponent.`setBorder(Border border)` Sets the border of this component.
    `void` | JViewport.`setBorder(Border border)` The viewport "scrolls" its child (called the "view") by the normal parent/child clipping (typically the view is moved in the opposite direction of the scroll).
    `void` | JScrollPane.`setViewportBorder(Border viewportBorder)` Adds a border around the viewport.

  - ### Uses of Border in javax.swing.border

    Classes in javax.swing.border that implement Border
    Modifier and Type | Class and Description
    --- | ---
    `class` | `AbstractBorder` A class that implements an empty border with no size.
    `class` | `BevelBorder` A class which implements a simple two-line bevel border.
    `class` | `CompoundBorder` A composite Border class used to compose two Border objects into a single border by nesting an inside Border object within the insets of an outside Border object.
    `class` | `EmptyBorder` A class which provides an empty, transparent border which takes up space but does no drawing.
    `class` | `EtchedBorder` A class which implements a simple etched border which can either be etched-in or etched-out.
    `class` | `LineBorder` A class which implements a line border of arbitrary thickness and of a single color.
    `class` | `MatteBorder` A class which provides a matte-like border of either a solid color or a tiled icon.
    `class` | `SoftBevelBorder` A class which implements a raised or lowered bevel with softened corners.
    `class` | `StrokeBorder` A class which implements a border of an arbitrary stroke.
    `class` | `TitledBorder` A class which implements an arbitrary border with the addition of a String title in a specified position and justification.

    Fields in javax.swing.border declared as Border
    Modifier and Type | Field and Description
    --- | ---
    `protected Border` | TitledBorder.`border`
    `protected Border` | CompoundBorder.`insideBorder`
    `protected Border` | CompoundBorder.`outsideBorder`

    Methods in javax.swing.border that return Border
    Modifier and Type | Method and Description
    --- | ---
    `static Border` | LineBorder.`createBlackLineBorder()` Convenience method for getting the Color.black LineBorder of thickness 1.
    `static Border` | LineBorder.`createGrayLineBorder()` Convenience method for getting the Color.gray LineBorder of thickness 1.
    `Border` | TitledBorder.`getBorder()` Returns the border of the titled border.
    `Border` | CompoundBorder.`getInsideBorder()` Returns the inside border object.
    `Border` | CompoundBorder.`getOutsideBorder()` Returns the outside border object.

    Methods in javax.swing.border with parameters of type Border
    Modifier and Type | Method and Description
    --- | ---
    `static Rectangle` | AbstractBorder.`getInteriorRectangle(Component c, Border b, int x, int y, int width, int height)` Returns a rectangle using the arguments minus the insets of the border.
    `void` | TitledBorder.`setBorder(Border border)` Sets the border of the titled border.

    Constructors in javax.swing.border with parameters of type Border
    Constructor and Description
    `CompoundBorder(Border outsideBorder, Border insideBorder)` Creates a compound border with the specified outside and inside borders.
    `TitledBorder(Border border)` Creates a TitledBorder instance with the specified border and an empty title.
    `TitledBorder(Border border, String title)` Creates a TitledBorder instance with the specified border and title.
    `TitledBorder(Border border, String title, int titleJustification, int titlePosition)` Creates a TitledBorder instance with the specified border, title, title-justification, and title-position.
    `TitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont)` Creates a TitledBorder instance with the specified border, title, title-justification, title-position, and title-font.
    `TitledBorder(Border border, String title, int titleJustification, int titlePosition, Font titleFont, Color titleColor)` Creates a TitledBorder instance with the specified border, title, title-justification, title-position, title-font, and title-color.

  - ### Uses of Border in javax.swing.plaf

    Classes in javax.swing.plaf that implement Border
    Modifier and Type | Class and Description
    --- | ---
    `class` | `BorderUIResource`
    `static class` | `BorderUIResource.BevelBorderUIResource`
    `static class` | `BorderUIResource.CompoundBorderUIResource`
    `static class` | `BorderUIResource.EmptyBorderUIResource`
    `static class` | `BorderUIResource.EtchedBorderUIResource`
    `static class` | `BorderUIResource.LineBorderUIResource`
    `static class` | `BorderUIResource.MatteBorderUIResource`
    `static class` | `BorderUIResource.TitledBorderUIResource`

    Methods in javax.swing.plaf that return Border
    Modifier and Type | Method and Description
    --- | ---
    `static Border` | BorderUIResource.`getBlackLineBorderUIResource()`
    `static Border` | BorderUIResource.`getEtchedBorderUIResource()`
    `static Border` | BorderUIResource.`getLoweredBevelBorderUIResource()`
    `static Border` | BorderUIResource.`getRaisedBevelBorderUIResource()`

    Constructors in javax.swing.plaf with parameters of type Border
    Constructor and Description
    `BorderUIResource(Border delegate)` Creates a UIResource border object which wraps an existing Border instance.
    `CompoundBorderUIResource(Border outsideBorder, Border insideBorder)`
    `TitledBorderUIResource(Border border)`
    `TitledBorderUIResource(Border border, String title)`
    `TitledBorderUIResource(Border border, String title, int titleJustification, int titlePosition)`
    `TitledBorderUIResource(Border border, String title, int titleJustification, int titlePosition, Font titleFont)`
    `TitledBorderUIResource(Border border, String title, int titleJustification, int titlePosition, Font titleFont, Color titleColor)`

  - ### Uses of Border in javax.swing.plaf.basic

    Classes in javax.swing.plaf.basic that implement Border
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `BasicBorders.ButtonBorder`
    `static class` | `BasicBorders.FieldBorder`
    `static class` | `BasicBorders.MarginBorder`
    `static class` | `BasicBorders.MenuBarBorder`
    `static class` | `BasicBorders.RadioButtonBorder`
    `static class` | `BasicBorders.RolloverButtonBorder` Special thin border for rollover toolbar buttons.
    `static class` | `BasicBorders.SplitPaneBorder` Draws the border around the splitpane.
    `static class` | `BasicBorders.ToggleButtonBorder`

    Fields in javax.swing.plaf.basic declared as Border
    Modifier and Type | Field and Description
    --- | ---
    `protected static Border` | BasicComboBoxRenderer.`noFocusBorder` An empty `Border`.

    Methods in javax.swing.plaf.basic that return Border
    Modifier and Type | Method and Description
    --- | ---
    `protected Border` | BasicToolBarUI.`createNonRolloverBorder()` Creates the non rollover border for toolbar components.
    `protected Border` | BasicToolBarUI.`createRolloverBorder()` Creates a rollover border for toolbar components.
    `Border` | BasicSplitPaneDivider.`getBorder()` Returns the border of this component or null if no border is currently set.
    `static Border` | BasicBorders.`getButtonBorder()`
    `static Border` | BasicBorders.`getInternalFrameBorder()`
    `static Border` | BasicBorders.`getMenuBarBorder()`
    `protected Border` | BasicToolBarUI.`getNonRolloverBorder(AbstractButton b)` Returns a non-rollover border for the button.
    `static Border` | BasicBorders.`getProgressBarBorder()`
    `static Border` | BasicBorders.`getRadioButtonBorder()`
    `protected Border` | BasicToolBarUI.`getRolloverBorder(AbstractButton b)` Returns a rollover border for the button.
    `static Border` | BasicBorders.`getSplitPaneBorder()`
    `static Border` | BasicBorders.`getSplitPaneDividerBorder()` Returns a border instance for a JSplitPane divider
    `static Border` | BasicBorders.`getTextFieldBorder()`
    `static Border` | BasicBorders.`getToggleButtonBorder()`

    Methods in javax.swing.plaf.basic with parameters of type Border
    Modifier and Type | Method and Description
    --- | ---
    `void` | BasicSplitPaneDivider.`setBorder(Border border)` Sets the border of this component.

  - ### Uses of Border in javax.swing.plaf.metal

    Classes in javax.swing.plaf.metal that implement Border
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `MetalBorders.ButtonBorder`
    `static class` | `MetalBorders.Flush3DBorder`
    `static class` | `MetalBorders.InternalFrameBorder`
    `static class` | `MetalBorders.MenuBarBorder`
    `static class` | `MetalBorders.MenuItemBorder`
    `static class` | `MetalBorders.OptionDialogBorder`
    `static class` | `MetalBorders.PaletteBorder` Border for a Palette.
    `static class` | `MetalBorders.PopupMenuBorder`
    `static class` | `MetalBorders.RolloverButtonBorder`
    `static class` | `MetalBorders.ScrollPaneBorder`
    `static class` | `MetalBorders.TableHeaderBorder` Border for a Table Header
    `static class` | `MetalBorders.TextFieldBorder`
    `static class` | `MetalBorders.ToggleButtonBorder`
    `static class` | `MetalBorders.ToolBarBorder`

    Methods in javax.swing.plaf.metal that return Border
    Modifier and Type | Method and Description
    --- | ---
    `protected Border` | MetalToolBarUI.`createNonRolloverBorder()`
    `protected Border` | MetalToolBarUI.`createRolloverBorder()`
    `static Border` | MetalBorders.`getButtonBorder()` Returns a border instance for a JButton
    `static Border` | MetalBorders.`getDesktopIconBorder()` Returns a border instance for a Desktop Icon
    `static Border` | MetalBorders.`getTextBorder()` Returns a border instance for a text component
    `static Border` | MetalBorders.`getTextFieldBorder()` Returns a border instance for a JTextField
    `static Border` | MetalBorders.`getToggleButtonBorder()` Returns a border instance for a JToggleButton

  - ### Uses of Border in javax.swing.table

    Fields in javax.swing.table declared as Border
    Modifier and Type | Field and Description
    --- | ---
    `protected static Border` | DefaultTableCellRenderer.`noFocusBorder`

  - ### Uses of Border in javax.swing.tree

    Fields in javax.swing.tree declared as Border
    Modifier and Type | Field and Description
    --- | ---
    `protected Border` | DefaultTreeCellEditor.DefaultTextField.`border` Border to use.

    Methods in javax.swing.tree that return Border
    Modifier and Type | Method and Description
    --- | ---
    `Border` | DefaultTreeCellEditor.DefaultTextField.`getBorder()` Overrides `JComponent.getBorder` to returns the current border.

    Methods in javax.swing.tree with parameters of type Border
    Modifier and Type | Method and Description
    --- | ---
    `void` | DefaultTreeCellEditor.DefaultTextField.`setBorder(Border border)` Sets the border of this component.

    Constructors in javax.swing.tree with parameters of type Border
    Constructor and Description
    `DefaultTextField(Border border)` Constructs a `DefaultTreeCellEditor.DefaultTextField` object.

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.