Is it possible to have a java swing border only on the top side?

Becky picture Becky · Feb 1, 2010 · Viewed 41.4k times · Source

I know how to create borders using BorderFactory but I don't see anything that lets me specify what sides I want the border on :S

Answer

Alex Ntousias picture Alex Ntousias · Feb 1, 2010

You can use the MatteBorder to specify the dimensions of the border in each side. The constructor of MatteBorder is:

public MatteBorder(int top,
                   int left,
                   int bottom,
                   int right,
                   Color matteColor)

So if you want to have a border only on the bottom and right sides of your JPanel, you could write something like this:

JPanel panel = new JPanel();
panel.setBorder(BorderFactory.createMatteBorder(0, 0, 1, 1, Color.BLACK));