Class BorderFactory
java.lang.Object
javax.swing.BorderFactory
public class BorderFactory extends Object
Factory class for vending standard
Border
objects. Wherever possible, this factory will hand out references to shared Border
instances. For further information and examples see How to Use Borders, a section in The Java Tutorial.- Since:
- 1.2
Method Summary
Modifier and Type | Method | Description |
---|---|---|
static Border |
createBevelBorder |
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 |
createBevelBorder |
Creates a beveled border of the specified type, using the specified highlighting and shadowing. |
static Border |
createBevelBorder |
Creates a beveled border of the specified type, using the specified colors for the inner and outer highlight and shadow areas. |
static CompoundBorder |
createCompoundBorder() |
Creates a compound border with a null inside edge and a null outside edge. |
static CompoundBorder |
createCompoundBorder |
Creates a compound border specifying the border objects to use for the outside and inside edges. |
static Border |
createDashedBorder |
Creates a dashed border of the specified paint . |
static Border |
createDashedBorder |
Creates a dashed border of the specified paint , relative length , and relative spacing . |
static Border |
createDashedBorder |
Creates a dashed border of the specified paint , thickness , line shape, relative length , and relative spacing . |
static Border |
createEmptyBorder() |
Creates an empty border that takes up no space. |
static Border |
createEmptyBorder |
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 |
createEtchedBorder() |
Creates a border with an "etched" look using the component's current background color for highlighting and shading. |
static Border |
createEtchedBorder |
Creates a border with an "etched" look using the component's current background color for highlighting and shading. |
static Border |
createEtchedBorder |
Creates a border with an "etched" look using the specified highlighting and shading colors. |
static Border |
createEtchedBorder |
Creates a border with an "etched" look using the specified highlighting and shading colors. |
static Border |
createLineBorder |
Creates a line border with the specified color. |
static Border |
createLineBorder |
Creates a line border with the specified color and width. |
static Border |
createLineBorder |
Creates a line border with the specified color, thickness, and corner shape. |
static Border |
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 |
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 MatteBorder |
createMatteBorder |
Creates a matte-look border using a solid color. |
static MatteBorder |
createMatteBorder |
Creates a matte-look border that consists of multiple tiles of a specified icon. |
static Border |
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 |
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 |
createSoftBevelBorder |
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 |
createSoftBevelBorder |
Creates a beveled border of the specified type with softened corners, using the specified highlighting and shadowing. |
static Border |
createSoftBevelBorder |
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 |
createStrokeBorder |
Creates a border of the specified stroke . |
static Border |
createStrokeBorder |
Creates a border of the specified stroke and paint . |
static TitledBorder |
createTitledBorder |
Creates a new titled border with the specified title, the default border type (determined by the current look and feel), 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 |
createTitledBorder |
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 |
createTitledBorder |
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 |
createTitledBorder |
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 |
createTitledBorder |
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 |
createTitledBorder |
Adds a title to an existing border, with the specified positioning, font and color. |
Method Details
createLineBorder
public static Border createLineBorder(Color color)
Creates a line border with the specified color.
- Parameters:
-
color
- aColor
to use for the line - Returns:
- the
Border
object
createLineBorder
public static Border createLineBorder(Color color, int thickness)
Creates a line border with the specified color and width. The width applies to all four sides of the border. To specify widths individually for the top, bottom, left, and right, use
createMatteBorder(int,int,int,int,Color)
.- Parameters:
-
color
- aColor
to use for the line -
thickness
- an integer specifying the width in pixels - Returns:
- the
Border
object
createLineBorder
public static Border createLineBorder(Color color, int thickness, boolean rounded)
Creates a line border with the specified color, thickness, and corner shape.
- Parameters:
-
color
- the color of the border -
thickness
- the thickness of the border -
rounded
- whether or not border corners should be round - Returns:
- the
Border
object - Since:
- 1.7
- See Also:
createRaisedBevelBorder
public static Border 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. (In a raised border, highlights are on top and shadows are underneath.)
- Returns:
- the
Border
object
createLoweredBevelBorder
public static Border 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. (In a lowered border, shadows are on top and highlights are underneath.)
- Returns:
- the
Border
object
createBevelBorder
public static Border 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. (In a lowered border, shadows are on top and highlights are underneath.)
- Parameters:
-
type
- an integer specifying eitherBevelBorder.LOWERED
orBevelBorder.RAISED
- Returns:
- the
Border
object
createBevelBorder
public static Border createBevelBorder(int type, Color highlight, Color shadow)
Creates a beveled border of the specified type, using the specified highlighting and shadowing. The outer edge of the highlighted area uses a brighter shade of the highlight color. The inner edge of the shadow area uses a brighter shade of the shadow color.
- Parameters:
-
type
- an integer specifying eitherBevelBorder.LOWERED
orBevelBorder.RAISED
-
highlight
- aColor
object for highlights -
shadow
- aColor
object for shadows - Returns:
- the
Border
object
createBevelBorder
public static Border 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.
- Parameters:
-
type
- an integer specifying eitherBevelBorder.LOWERED
orBevelBorder.RAISED
-
highlightOuter
- aColor
object for the outer edge of the highlight area -
highlightInner
- aColor
object for the inner edge of the highlight area -
shadowOuter
- aColor
object for the outer edge of the shadow area -
shadowInner
- aColor
object for the inner edge of the shadow area - Returns:
- the
Border
object
createRaisedSoftBevelBorder
public static Border 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. In a raised border, highlights are on top and shadows are underneath.
- Returns:
- the
Border
object - Since:
- 1.7
createLoweredSoftBevelBorder
public static Border 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. In a lowered border, shadows are on top and highlights are underneath.
- Returns:
- the
Border
object - Since:
- 1.7
createSoftBevelBorder
public static Border 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. The type is either
BevelBorder.RAISED
or BevelBorder.LOWERED
.- Parameters:
-
type
- a type of a bevel - Returns:
- the
Border
object ornull
if the specified type is not valid - Since:
- 1.7
- See Also:
createSoftBevelBorder
public static Border createSoftBevelBorder(int type, Color highlight, Color shadow)
Creates a beveled border of the specified type with softened corners, using the specified highlighting and shadowing. The type is either
BevelBorder.RAISED
or BevelBorder.LOWERED
. The outer edge of the highlight area uses a brighter shade of the highlight
color. The inner edge of the shadow area uses a brighter shade of the shadow
color.- Parameters:
-
type
- a type of a bevel -
highlight
- a basic color of the highlight area -
shadow
- a basic color of the shadow area - Returns:
- the
Border
object - Since:
- 1.7
- See Also:
createSoftBevelBorder
public static Border 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. The type is either
BevelBorder.RAISED
or BevelBorder.LOWERED
. Note: The shadow inner and outer colors are switched for a lowered bevel border.- Parameters:
-
type
- a type of a bevel -
highlightOuter
- a color of the outer edge of the highlight area -
highlightInner
- a color of the inner edge of the highlight area -
shadowOuter
- a color of the outer edge of the shadow area -
shadowInner
- a color of the inner edge of the shadow area - Returns:
- the
Border
object - Since:
- 1.7
- See Also:
createEtchedBorder
public static Border createEtchedBorder()
Creates a border with an "etched" look using the component's current background color for highlighting and shading.
- Returns:
- the
Border
object
createEtchedBorder
public static Border createEtchedBorder(Color highlight, Color shadow)
Creates a border with an "etched" look using the specified highlighting and shading colors.
- Parameters:
-
highlight
- aColor
object for the border highlights -
shadow
- aColor
object for the border shadows - Returns:
- the
Border
object
createEtchedBorder
public static Border createEtchedBorder(int type)
Creates a border with an "etched" look using the component's current background color for highlighting and shading.
- Parameters:
-
type
- one ofEtchedBorder.RAISED
, orEtchedBorder.LOWERED
- Returns:
- the
Border
object - Throws:
-
IllegalArgumentException
- if type is not eitherEtchedBorder.RAISED
orEtchedBorder.LOWERED
- Since:
- 1.3
createEtchedBorder
public static Border createEtchedBorder(int type, Color highlight, Color shadow)
Creates a border with an "etched" look using the specified highlighting and shading colors.
- Parameters:
-
type
- one ofEtchedBorder.RAISED
, orEtchedBorder.LOWERED
-
highlight
- aColor
object for the border highlights -
shadow
- aColor
object for the border shadows - Returns:
- the
Border
object - Since:
- 1.3
createTitledBorder
public static TitledBorder createTitledBorder(String title)
Creates a new titled border with the specified title, the default border type (determined by the current look and feel), 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).
- Parameters:
-
title
- aString
containing the text of the title - Returns:
- the
TitledBorder
object
createTitledBorder
public static TitledBorder 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).
- Parameters:
-
border
- theBorder
object to add the title to; ifnull
theBorder
is determined by the current look and feel. - Returns:
- the
TitledBorder
object
createTitledBorder
public static TitledBorder 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).
- Parameters:
-
border
- theBorder
object to add the title to -
title
- aString
containing the text of the title - Returns:
- the
TitledBorder
object
createTitledBorder
public static TitledBorder 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).
- Parameters:
-
border
- theBorder
object to add the title to -
title
- aString
containing the text of the title -
titleJustification
- an integer specifying the justification of the title -- one of the following:-
TitledBorder.LEFT
-
TitledBorder.CENTER
-
TitledBorder.RIGHT
-
TitledBorder.LEADING
-
TitledBorder.TRAILING
-
TitledBorder.DEFAULT_JUSTIFICATION
(leading)
-
-
titlePosition
- an integer specifying the vertical position of the text in relation to the border -- one of the following:-
TitledBorder.ABOVE_TOP
-
TitledBorder.TOP
(sitting on the top line) -
TitledBorder.BELOW_TOP
-
TitledBorder.ABOVE_BOTTOM
-
TitledBorder.BOTTOM
(sitting on the bottom line) -
TitledBorder.BELOW_BOTTOM
-
TitledBorder.DEFAULT_POSITION
(the title position is determined by the current look and feel)
-
- Returns:
- the
TitledBorder
object
createTitledBorder
public static TitledBorder 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).
- Parameters:
-
border
- theBorder
object to add the title to -
title
- aString
containing the text of the title -
titleJustification
- an integer specifying the justification of the title -- one of the following:-
TitledBorder.LEFT
-
TitledBorder.CENTER
-
TitledBorder.RIGHT
-
TitledBorder.LEADING
-
TitledBorder.TRAILING
-
TitledBorder.DEFAULT_JUSTIFICATION
(leading)
-
-
titlePosition
- an integer specifying the vertical position of the text in relation to the border -- one of the following:-
TitledBorder.ABOVE_TOP
-
TitledBorder.TOP
(sitting on the top line) -
TitledBorder.BELOW_TOP
-
TitledBorder.ABOVE_BOTTOM
-
TitledBorder.BOTTOM
(sitting on the bottom line) -
TitledBorder.BELOW_BOTTOM
-
TitledBorder.DEFAULT_POSITION
(the title position is determined by the current look and feel)
-
-
titleFont
- a Font object specifying the title font - Returns:
- the TitledBorder object
createTitledBorder
public static TitledBorder 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.
- Parameters:
-
border
- theBorder
object to add the title to -
title
- aString
containing the text of the title -
titleJustification
- an integer specifying the justification of the title -- one of the following:-
TitledBorder.LEFT
-
TitledBorder.CENTER
-
TitledBorder.RIGHT
-
TitledBorder.LEADING
-
TitledBorder.TRAILING
-
TitledBorder.DEFAULT_JUSTIFICATION
(leading)
-
-
titlePosition
- an integer specifying the vertical position of the text in relation to the border -- one of the following:-
TitledBorder.ABOVE_TOP
-
TitledBorder.TOP
(sitting on the top line) -
TitledBorder.BELOW_TOP
-
TitledBorder.ABOVE_BOTTOM
-
TitledBorder.BOTTOM
(sitting on the bottom line) -
TitledBorder.BELOW_BOTTOM
-
TitledBorder.DEFAULT_POSITION
(the title position is determined by the current look and feel)
-
-
titleFont
- aFont
object specifying the title font -
titleColor
- aColor
object specifying the title color - Returns:
- the
TitledBorder
object
createEmptyBorder
public static Border createEmptyBorder()
Creates an empty border that takes up no space. (The width of the top, bottom, left, and right sides are all zero.)
- Returns:
- the
Border
object
createEmptyBorder
public static Border 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.
- Parameters:
-
top
- an integer specifying the width of the top, in pixels -
left
- an integer specifying the width of the left side, in pixels -
bottom
- an integer specifying the width of the bottom, in pixels -
right
- an integer specifying the width of the right side, in pixels - Returns:
- the
Border
object
createCompoundBorder
public static CompoundBorder createCompoundBorder()
Creates a compound border with a
null
inside edge and a null
outside edge.- Returns:
- the
CompoundBorder
object
createCompoundBorder
public static CompoundBorder createCompoundBorder(Border outsideBorder, Border insideBorder)
Creates a compound border specifying the border objects to use for the outside and inside edges.
- Parameters:
-
outsideBorder
- aBorder
object for the outer edge of the compound border -
insideBorder
- aBorder
object for the inner edge of the compound border - Returns:
- the
CompoundBorder
object
createMatteBorder
public static MatteBorder createMatteBorder(int top, int left, int bottom, int right, Color color)
Creates a matte-look border using a solid color. (The difference between this border and a line border is that you can specify the individual border dimensions.)
- Parameters:
-
top
- an integer specifying the width of the top, in pixels -
left
- an integer specifying the width of the left side, in pixels -
bottom
- an integer specifying the width of the right side, in pixels -
right
- an integer specifying the width of the bottom, in pixels -
color
- aColor
to use for the border - Returns:
- the
MatteBorder
object
createMatteBorder
public static MatteBorder createMatteBorder(int top, int left, int bottom, int right, Icon tileIcon)
Creates a matte-look border that consists of multiple tiles of a specified icon. Multiple copies of the icon are placed side-by-side to fill up the border area.
Note:
If the icon doesn't load, the border area is painted gray.
- Parameters:
-
top
- an integer specifying the width of the top, in pixels -
left
- an integer specifying the width of the left side, in pixels -
bottom
- an integer specifying the width of the right side, in pixels -
right
- an integer specifying the width of the bottom, in pixels -
tileIcon
- theIcon
object used for the border tiles - Returns:
- the
MatteBorder
object
createStrokeBorder
public static Border createStrokeBorder(BasicStroke stroke)
Creates a border of the specified
stroke
. The component's foreground color will be used to render the border.- Parameters:
-
stroke
- theBasicStroke
object used to stroke a shape - Returns:
- the
Border
object - Throws:
-
NullPointerException
- if the specifiedstroke
isnull
- Since:
- 1.7
createStrokeBorder
public static Border createStrokeBorder(BasicStroke stroke, Paint paint)
Creates a border of the specified
stroke
and paint
. If the specified paint
is null
, the component's foreground color will be used to render the border.- Parameters:
-
stroke
- theBasicStroke
object used to stroke a shape -
paint
- thePaint
object used to generate a color - Returns:
- the
Border
object - Throws:
-
NullPointerException
- if the specifiedstroke
isnull
- Since:
- 1.7
createDashedBorder
public static Border createDashedBorder(Paint paint)
Creates a dashed border of the specified
paint
. If the specified paint
is null
, the component's foreground color will be used to render the border. The width of a dash line is equal to 1
. The relative length of a dash line and the relative spacing between dash lines are equal to 1
. A dash line is not rounded.- Parameters:
-
paint
- thePaint
object used to generate a color - Returns:
- the
Border
object - Since:
- 1.7
createDashedBorder
public static Border createDashedBorder(Paint paint, float length, float spacing)
Creates a dashed border of the specified
paint
, relative length
, and relative spacing
. If the specified paint
is null
, the component's foreground color will be used to render the border. The width of a dash line is equal to 1
. A dash line is not rounded.- Parameters:
-
paint
- thePaint
object used to generate a color -
length
- the relative length of a dash line -
spacing
- the relative spacing between dash lines - Returns:
- the
Border
object - Throws:
-
IllegalArgumentException
- if the specifiedlength
is less than1
, or if the specifiedspacing
is less than0
- Since:
- 1.7
createDashedBorder
public static Border 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
. If the specified paint
is null
, the component's foreground color will be used to render the border.- Parameters:
-
paint
- thePaint
object used to generate a color -
thickness
- the width of a dash line -
length
- the relative length of a dash line -
spacing
- the relative spacing between dash lines -
rounded
- whether or not line ends should be round - Returns:
- the
Border
object - Throws:
-
IllegalArgumentException
- if the specifiedthickness
is less than1
, or if the specifiedlength
is less than1
, or if the specifiedspacing
is less than0
- Since:
- 1.7
© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/javax/swing/BorderFactory.html