RE:Botones de Diversas Formas en JAVA
Generar ese tipo de botones es bastante entrevesado, y normalmente no merece la pena meterse en esa faena para aplicaciones simples.
Una de las formas más sencillas de conseguir sería el círculo, pero aún asi no te lo recomiendo, a no ser que quieras hacerlo por mera curiosidad y por obtener algo de experiencia en ese sentido.
Sin embargo, puedo darte una idea para hacer algo que "simule" esas formas.
Y te digo que lo "simula", xq realmente el area en el que se detectaría el click sería cuadrangular, pero la forma que se vería podría ser la que tú quisieras.
Te comento:
Podrías comenzar por realizarte dos imagenes (triangulares por ejemplo), una que simule un botón sin pulsar, y otra que lo simule pulsado.
Tras eso, te creas un label x ejemplo, al que no le pones borde, y le asignas la imagen del botón sin pulsar como fondo del label.
Luego, editas el evento que corresponda para el mouse, y cuando se haga click en el botón, cambias la imagen por la del botón pulsado, y cuando se suelte, la vuelves a cambiar x la del botón sin pulsar.
El efecto será tal y como se comportaría un botón triangular, pero como te comenté antes, el área que detecte el click será el área cuadrangular que contenga la imagen.
Espero que te sirva un poco de ayuda y de orientación ; )