Module java.desktop

Class TitledBorder

java.lang.Object
javax.swing.border.AbstractBorder
javax.swing.border.TitledBorder
All Implemented Interfaces:
Serializable, Border
Direct Known Subclasses:
BorderUIResource.TitledBorderUIResource

public class TitledBorder
extends AbstractBorder
A class which implements an arbitrary border with the addition of a String title in a specified position and justification.

If the border, font, or color property values are not specified in the constructor or by invoking the appropriate set methods, the property values will be defined by the current look and feel, using the following property names in the Defaults Table:

  • "TitledBorder.border"
  • "TitledBorder.font"
  • "TitledBorder.titleColor"

Warning: Serialized objects of this class will not be compatible with future Swing releases. The current serialization support is appropriate for short term storage or RMI between applications running the same version of Swing. As of 1.4, support for long term storage of all JavaBeans™ has been added to the java.beans package. Please see XMLEncoder.

  • Field Summary

    Fields 
    Modifier and Type Field Description
    static int ABOVE_BOTTOM
    Position the title above the border's bottom line.
    static int ABOVE_TOP
    Position the title above the border's top line.
    static int BELOW_BOTTOM
    Position the title below the border's bottom line.
    static int BELOW_TOP
    Position the title below the border's top line.
    protected Border border
    The border.
    static int BOTTOM
    Position the title in the middle of the border's bottom line.
    static int CENTER
    Position title text in the center of the border line.
    static int DEFAULT_JUSTIFICATION
    Use the default justification for the title text.
    static int DEFAULT_POSITION
    Use the default vertical orientation for the title text.
    protected static int EDGE_SPACING
    Space between the border and the component's edge
    static int LEADING
    Position title text at the left side of the border line for left to right orientation, at the right side of the border line for right to left orientation.
    static int LEFT
    Position title text at the left side of the border line.
    static int RIGHT
    Position title text at the right side of the border line.
    protected static int TEXT_INSET_H
    Horizontal inset of text that is left or right justified
    protected static int TEXT_SPACING
    Space between the border and text
    protected String title
    The title the border should display.
    protected Color titleColor
    The color of the title.
    protected Font titleFont
    The font for rendering the title.
    protected int titleJustification
    The justification for the title.
    protected int titlePosition
    The position for the title.
    static int TOP
    Position the title in the middle of the border's top line.
    static int TRAILING
    Position title text at the right side of the border line for left to right orientation, at the left side of the border line for right to left orientation.
  • Constructor Summary

    Constructors 
    Constructor Description
    TitledBorder​(String title)
    Creates a TitledBorder instance.
    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.
  • Method Summary

    Modifier and Type Method Description
    int getBaseline​(Component c, int width, int height)
    Returns the baseline.
    Component.BaselineResizeBehavior getBaselineResizeBehavior​(Component c)
    Returns an enum indicating how the baseline of the border changes as the size changes.
    Border getBorder()
    Returns the border of the titled border.
    Insets getBorderInsets​(Component c, Insets insets)
    Reinitialize the insets parameter with this Border's current Insets.
    protected Font getFont​(Component c)
    Returns default font of the titled border.
    Dimension getMinimumSize​(Component c)
    Returns the minimum dimensions this border requires in order to fully display the border and title.
    String getTitle()
    Returns the title of the titled border.
    Color getTitleColor()
    Returns the title-color of the titled border.
    Font getTitleFont()
    Returns the title-font of the titled border.
    int getTitleJustification()
    Returns the title-justification of the titled border.
    int getTitlePosition()
    Returns the title-position of the titled border.
    boolean isBorderOpaque()
    Returns whether or not the border is opaque.
    void paintBorder​(Component c, Graphics g, int x, int y, int width, int height)
    Paints the border for the specified component with the specified position and size.
    void setBorder​(Border border)
    Sets the border of the titled border.
    void setTitle​(String title)
    Sets the title of the titled border.
    void setTitleColor​(Color titleColor)
    Sets the title-color of the titled border.
    void setTitleFont​(Font titleFont)
    Sets the title-font of the titled border.
    void setTitleJustification​(int titleJustification)
    Sets the title-justification of the titled border.
    void setTitlePosition​(int titlePosition)
    Sets the title-position of the titled border.

    Methods declared in class javax.swing.border.AbstractBorder

    getBorderInsets, getInteriorRectangle, getInteriorRectangle

    Methods declared in class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • TitledBorder

      public TitledBorder​(String title)
      Creates a TitledBorder instance.
      Parameters:
      title - the title the border should display
    • TitledBorder

      public TitledBorder​(Border border)
      Creates a TitledBorder instance with the specified border and an empty title.
      Parameters:
      border - the border
    • TitledBorder

      public TitledBorder​(Border border, String title)
      Creates a TitledBorder instance with the specified border and title.
      Parameters:
      border - the border
      title - the title the border should display
    • TitledBorder

      public TitledBorder​(Border border, String title, int titleJustification, int titlePosition)
      Creates a TitledBorder instance with the specified border, title, title-justification, and title-position.
      Parameters:
      border - the border
      title - the title the border should display
      titleJustification - the justification for the title
      titlePosition - the position for the title
    • TitledBorder

      public 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.
      Parameters:
      border - the border
      title - the title the border should display
      titleJustification - the justification for the title
      titlePosition - the position for the title
      titleFont - the font for rendering the title
    • TitledBorder

      @ConstructorProperties({"border","title","titleJustification","titlePosition","titleFont","titleColor"}) public 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.
      Parameters:
      border - the border
      title - the title the border should display
      titleJustification - the justification for the title
      titlePosition - the position for the title
      titleFont - the font of the title
      titleColor - the color of the title
  • Method Details

    • paintBorder

      public void paintBorder​(Component c, Graphics g, int x, int y, int width, int height)
      Paints the border for the specified component with the specified position and size.
      Specified by:
      paintBorder in interface Border
      Overrides:
      paintBorder in class AbstractBorder
      Parameters:
      c - the component for which this border is being painted
      g - the paint graphics
      x - the x position of the painted border
      y - the y position of the painted border
      width - the width of the painted border
      height - the height of the painted border
    • getBorderInsets

      public Insets getBorderInsets​(Component c, Insets insets)
      Reinitialize the insets parameter with this Border's current Insets.
      Overrides:
      getBorderInsets in class AbstractBorder
      Parameters:
      c - the component for which this border insets value applies
      insets - the object to be reinitialized
      Returns:
      the insets object
    • isBorderOpaque

      public boolean isBorderOpaque()
      Returns whether or not the border is opaque.
      Specified by:
      isBorderOpaque in interface Border
      Overrides:
      isBorderOpaque in class AbstractBorder
      Returns:
      false
    • getTitle

      public String getTitle()
      Returns the title of the titled border.
      Returns:
      the title of the titled border
    • getBorder

      public Border getBorder()
      Returns the border of the titled border.
      Returns:
      the border of the titled border
    • getTitlePosition

      public int getTitlePosition()
      Returns the title-position of the titled border.
      Returns:
      the title-position of the titled border
    • getTitleJustification

      public int getTitleJustification()
      Returns the title-justification of the titled border.
      Returns:
      the title-justification of the titled border
    • getTitleFont

      public Font getTitleFont()
      Returns the title-font of the titled border.
      Returns:
      the title-font of the titled border
    • getTitleColor

      public Color getTitleColor()
      Returns the title-color of the titled border.
      Returns:
      the title-color of the titled border
    • setTitle

      public void setTitle​(String title)
      Sets the title of the titled border.
      Parameters:
      title - the title for the border
    • setBorder

      public void setBorder​(Border border)
      Sets the border of the titled border.
      Parameters:
      border - the border
    • setTitlePosition

      public void setTitlePosition​(int titlePosition)
      Sets the title-position of the titled border.
      Parameters:
      titlePosition - the position for the border
    • setTitleJustification

      public void setTitleJustification​(int titleJustification)
      Sets the title-justification of the titled border.
      Parameters:
      titleJustification - the justification for the border
    • setTitleFont

      public void setTitleFont​(Font titleFont)
      Sets the title-font of the titled border.
      Parameters:
      titleFont - the font for the border title
    • setTitleColor

      public void setTitleColor​(Color titleColor)
      Sets the title-color of the titled border.
      Parameters:
      titleColor - the color for the border title
    • getMinimumSize

      public Dimension getMinimumSize​(Component c)
      Returns the minimum dimensions this border requires in order to fully display the border and title.
      Parameters:
      c - the component where this border will be drawn
      Returns:
      the Dimension object
    • getBaseline

      public int getBaseline​(Component c, int width, int height)
      Returns the baseline.
      Overrides:
      getBaseline in class AbstractBorder
      Parameters:
      c - Component baseline is being requested for
      width - the width to get the baseline for
      height - the height to get the baseline for
      Returns:
      the baseline or < 0 indicating there is no reasonable baseline
      Throws:
      NullPointerException
      IllegalArgumentException - if width or height is < 0
      Since:
      1.6
      See Also:
      JComponent.getBaseline(int, int)
    • getBaselineResizeBehavior

      public Component.BaselineResizeBehavior getBaselineResizeBehavior​(Component c)
      Returns an enum indicating how the baseline of the border changes as the size changes.
      Overrides:
      getBaselineResizeBehavior in class AbstractBorder
      Parameters:
      c - Component to return baseline resize behavior for
      Returns:
      an enum indicating how the baseline changes as the border is resized
      Throws:
      NullPointerException
      Since:
      1.6
      See Also:
      JComponent.getBaseline(int, int)
    • getFont

      protected Font getFont​(Component c)
      Returns default font of the titled border.
      Parameters:
      c - the component
      Returns:
      default font of the titled border