If you need more than just rectangular buttons, you could use Skidracer's InsidePoly function. I'm using this for rotated and odd shaped buttons and find that it's very accurate and fast.
http://www.blitzbasic.com/codearcs/codearcs.php?code=45
http://www.blitzbasic.com/codearcs/codearcs.php?code=45