Try using a JLabel instead of a JButton to hold the image.