Java: using an image as a button

3sdmx picture 3sdmx · Feb 4, 2011 · Viewed 89.6k times · Source

I would like to use an image as a button in Java, and I tried to do this:

BufferedImage buttonIcon = ImageIO.read(new File("buttonIconPath"));
button = new JButton(new ImageIcon(buttonIcon));

But this still shows the actual button behind the image, I would only like the image to function as the button, how can I do this?

Answer

jzd picture jzd · Feb 4, 2011

Remove the border like so:

button.setBorder(BorderFactory.createEmptyBorder());

and then also the contents1:

button.setContentAreaFilled(false);

1: Taken from the solution added to the question by @3sdmx