mira esto lo logras de la forma más sencilla, usa swing, especificamente el Jbutton del paquete java.swing.*, en ella tienes un metodo que te permite colocar una imagen tanto cuando pulsas el boton, cuando permanece presionado, cuando pasas el mouse ....checalo