Source Code : Rectangle border

Java Is Open Source Programming Language You Can Download From Java and Java Libraries From http://www.oracle.com. Click Here to download
We provide this code related to title for you to solve your developing problem easily. Libraries which is import in this program you can download from http://www.oracle.com. Click Here or search from google with Libraries Name you get jar file related it

Rectangle border

  
import java.awt.Color;
import java.awt.Component;
import java.awt.Graphics;
import java.awt.Insets;

import javax.swing.border.AbstractBorder;

public class RectangleBorder extends AbstractBorder {
  protected Insets thickness;

  protected Color lineColor;

  protected Insets gap;

  public RectangleBorder(Color color) {
    this(color, new Insets(1, 1, 1, 1));
  }

  public RectangleBorder(Color color, Insets thickness) {
    this(color, thickness, thickness);
  }

  public RectangleBorder(Color color, Insets thickness, Insets gap) {
    lineColor = color;
    this.thickness = thickness;
    this.gap = gap;
  }

  public void paintBorder(Component c, Graphics g, int x, int y, int width, int height) {
    Color oldColor = g.getColor();
 

    g.setColor(lineColor);
    // top
    for (int i = 0; i < thickness.top; i++) {
      g.drawLine(x, y + i, x + width, y + i);
    }
    // bottom
    for (int i = 0; i < thickness.bottom; i++) {
      g.drawLine(x, y + height - i - 1, x + width, y + height - i - 1);
    }
    // right
    for (int i = 0; i < thickness.right; i++) {
      g.drawLine(x + width - i - 1, y, x + width - i - 1, y + height);
    }
    // left
    for (int i = 0; i < thickness.left; i++) {
      g.drawLine(x + i, y, x + i, y + height);
    }
    g.setColor(oldColor);
  }

  /**
   * Returns the insets of the border.
   * 
   * @param c
   *          the component for which this border insets value applies
   */
  public Insets getBorderInsets(Component c) {
    return gap;
  }

  public Insets getBorderInsets(Component c, Insets insets) {
    insets.left = gap.left;
    insets.top = gap.top;
    insets.right = gap.right;
    insets.bottom = gap.bottom;
    return insets;
  }

  /**
   * Returns the color of the border.
   */
  public Color getLineColor() {
    return lineColor;
  }

  /**
   * Returns the thickness of the border.
   */
  public Insets getThickness() {
    return thickness;
  }

  /**
   * Returns whether or not the border is opaque.
   */
  public boolean isBorderOpaque() {
    return false;
  }

  public Insets getGap() {
    return gap;
  }

}

   
    
  

Thank with us