That should be fairly easy to set up. Create a "NotVoted" group to contain those that have not yet voted, (you can automatically add new users to this group when they register). Make the voting page only accessible to the "NotVoted" group. Once they have voted, have a button that says something like "click to continue" and attach the code to that button for removing them from the "NotVoted" group.
<input type="hidden" name="modifygroup" value="<?php removegroupinput("NotVoted"); ?>">
In fact, you could also store their choice of vote in a Custom field, should you want to keep a running tally of the vote.