We've actually developed a TimePicker here in-house, which basically does what you're looking for. It's a form that uses a time mask to correct input and also has a visual component that allows you to set the time through clicking, like the DatePicker.

It's still in "library" status currently, but we're working on the finishing touches to get it in the product as a standard Web Control. Possible that we'll showcase it at the EDUC this year, if it's ready.