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(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
createBevelBorder(int type, Color highlight, Color shadow)
Creates a beveled border of the specified type, using the specified highlighting and shadowing.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.static CompoundBorder
createCompoundBorder()
Creates a compound border with anull
inside edge and anull
outside edge.static CompoundBorder
createCompoundBorder(Border outsideBorder, Border insideBorder)
Creates a compound border specifying the border objects to use for the outside and inside edges.static Border
createDashedBorder(Paint paint)
Creates a dashed border of the specifiedpaint
.static Border
createDashedBorder(Paint paint, float length, float spacing)
Creates a dashed border of the specifiedpaint
, relativelength
, and relativespacing
.static Border
createDashedBorder(Paint paint, float thickness, float length, float spacing, boolean rounded)
Creates a dashed border of the specifiedpaint
,thickness
, line shape, relativelength
, and relativespacing
.static Border
createEmptyBorder()
Creates an empty border that takes up no space.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.static Border
createEtchedBorder()
Creates a border with an "etched" look using the component's current background color for highlighting and shading.static Border
createEtchedBorder(int type)
Creates a border with an "etched" look using the component's current background color for highlighting and shading.static Border
createEtchedBorder(int type, Color highlight, Color shadow)
Creates a border with an "etched" look using the specified highlighting and shading colors.static Border
createEtchedBorder(Color highlight, Color shadow)
Creates a border with an "etched" look using the specified highlighting and shading colors.static Border
createLineBorder(Color color)
Creates a line border with the specified color.static Border
createLineBorder(Color color, int thickness)
Creates a line border with the specified color and width.static Border
createLineBorder(Color color, int thickness, boolean rounded)
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(int top, int left, int bottom, int right, Color color)
Creates a matte-look border using a solid color.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.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(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
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
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
createStrokeBorder(BasicStroke stroke)
Creates a border of the specifiedstroke
.static Border
createStrokeBorder(BasicStroke stroke, Paint paint)
Creates a border of the specifiedstroke
andpaint
.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).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).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).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).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).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.
-
Method Details
-
createLineBorder
Creates a line border with the specified color.- Parameters:
color
- aColor
to use for the line- Returns:
- the
Border
object
-
createLineBorder
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, usecreateMatteBorder(int,int,int,int,Color)
.- Parameters:
color
- aColor
to use for the linethickness
- an integer specifying the width in pixels- Returns:
- the
Border
object
-
createLineBorder
Creates a line border with the specified color, thickness, and corner shape.- Parameters:
color
- the color of the borderthickness
- the thickness of the borderrounded
- whether or not border corners should be round- Returns:
- the
Border
object - Since:
- 1.7
- See Also:
LineBorder(Color, int, boolean)
-
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
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
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
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 highlightsshadow
- 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 areahighlightInner
- aColor
object for the inner edge of the highlight areashadowOuter
- aColor
object for the outer edge of the shadow areashadowInner
- aColor
object for the inner edge of the shadow area- Returns:
- the
Border
object
-
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
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
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 eitherBevelBorder.RAISED
orBevelBorder.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:
BevelBorder(int)
-
createSoftBevelBorder
Creates a beveled border of the specified type with softened corners, using the specified highlighting and shadowing. The type is eitherBevelBorder.RAISED
orBevelBorder.LOWERED
. The outer edge of the highlight area uses a brighter shade of thehighlight
color. The inner edge of the shadow area uses a brighter shade of theshadow
color.- Parameters:
type
- a type of a bevelhighlight
- a basic color of the highlight areashadow
- a basic color of the shadow area- Returns:
- the
Border
object - Since:
- 1.7
- See Also:
BevelBorder(int, Color, Color)
-
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 eitherBevelBorder.RAISED
orBevelBorder.LOWERED
. Note: The shadow inner and outer colors are switched for a lowered bevel border.- Parameters:
type
- a type of a bevelhighlightOuter
- a color of the outer edge of the highlight areahighlightInner
- a color of the inner edge of the highlight areashadowOuter
- a color of the outer edge of the shadow areashadowInner
- a color of the inner edge of the shadow area- Returns:
- the
Border
object - Since:
- 1.7
- See Also:
BevelBorder(int, Color, Color, Color, Color)
-
createEtchedBorder
Creates a border with an "etched" look using the component's current background color for highlighting and shading.- Returns:
- the
Border
object
-
createEtchedBorder
Creates a border with an "etched" look using the specified highlighting and shading colors.- Parameters:
highlight
- aColor
object for the border highlightsshadow
- aColor
object for the border shadows- Returns:
- the
Border
object
-
createEtchedBorder
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
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 highlightsshadow
- aColor
object for the border shadows- Returns:
- the
Border
object - Since:
- 1.3
-
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).- Parameters:
title
- aString
containing the text of the title- Returns:
- the
TitledBorder
object
-
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).- Parameters:
border
- theBorder
object to add the title to; ifnull
theBorder
is determined by the current look and feel.- Returns:
- the
TitledBorder
object
-
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).- Parameters:
border
- theBorder
object to add the title totitle
- 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 totitle
- aString
containing the text of the titletitleJustification
- 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 totitle
- aString
containing the text of the titletitleJustification
- 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 totitle
- aString
containing the text of the titletitleJustification
- 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 fonttitleColor
- aColor
object specifying the title color- Returns:
- the
TitledBorder
object
-
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
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 pixelsleft
- an integer specifying the width of the left side, in pixelsbottom
- an integer specifying the width of the bottom, in pixelsright
- an integer specifying the width of the right side, in pixels- Returns:
- the
Border
object
-
createCompoundBorder
Creates a compound border with anull
inside edge and anull
outside edge.- Returns:
- the
CompoundBorder
object
-
createCompoundBorder
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 borderinsideBorder
- aBorder
object for the inner edge of the compound border- Returns:
- the
CompoundBorder
object
-
createMatteBorder
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 pixelsleft
- an integer specifying the width of the left side, in pixelsbottom
- an integer specifying the width of the right side, in pixelsright
- an integer specifying the width of the bottom, in pixelscolor
- 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 pixelsleft
- an integer specifying the width of the left side, in pixelsbottom
- an integer specifying the width of the right side, in pixelsright
- an integer specifying the width of the bottom, in pixelstileIcon
- theIcon
object used for the border tiles- Returns:
- the
MatteBorder
object
-
createStrokeBorder
Creates a border of the specifiedstroke
. 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
Creates a border of the specifiedstroke
andpaint
. If the specifiedpaint
isnull
, the component's foreground color will be used to render the border.- Parameters:
stroke
- theBasicStroke
object used to stroke a shapepaint
- thePaint
object used to generate a color- Returns:
- the
Border
object - Throws:
NullPointerException
- if the specifiedstroke
isnull
- Since:
- 1.7
-
createDashedBorder
Creates a dashed border of the specifiedpaint
. If the specifiedpaint
isnull
, the component's foreground color will be used to render the border. The width of a dash line is equal to1
. The relative length of a dash line and the relative spacing between dash lines are equal to1
. A dash line is not rounded.- Parameters:
paint
- thePaint
object used to generate a color- Returns:
- the
Border
object - Since:
- 1.7
-
createDashedBorder
Creates a dashed border of the specifiedpaint
, relativelength
, and relativespacing
. If the specifiedpaint
isnull
, the component's foreground color will be used to render the border. The width of a dash line is equal to1
. A dash line is not rounded.- Parameters:
paint
- thePaint
object used to generate a colorlength
- the relative length of a dash linespacing
- 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 specifiedpaint
,thickness
, line shape, relativelength
, and relativespacing
. If the specifiedpaint
isnull
, the component's foreground color will be used to render the border.- Parameters:
paint
- thePaint
object used to generate a colorthickness
- the width of a dash linelength
- the relative length of a dash linespacing
- the relative spacing between dash linesrounded
- 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
-