Lo mas sencillo es que en lugar de usar botones uses imagenes (un
TImage o un TShape).
De esta forma, si quieres el botón puede ser, por ejemplo, un
círculo. Para que cambie de forma cuando pases el raton por encima,
usa sus eventos, por ejemplo:
Shape1->OnMousePass();
Y establece en ese evento que Shape1 cambie de forma
Shape1->Shape = Square; //y cuando pases el raton por encima,
cambiara a cuadrado o a la forma que quieras.
Si es con imagenes, haz que en ese evento cargue una imagen u otra en
el canvas
Image1->Canvas->LoadImage("path");
Usando los eventos de manejo del raton sobre el shape o el image
puedes hacer que se comporten como botones (OnMouseClick
(),OnMouseButton(), etc)
Espero que todo esto te sirva. Si tienes dudas, solo tienes que
contactar conmigo.
Un saludo desde españa. Almu