One of my pet hates in GUI widgets is the 'spinbox', and I especially dislike the idea of a floating point spinbox. I think for technical reasons I had trouble wrapping the KDE3 floating point spinbox in korundum, and couldn't get particularly worked up about fixing it. But I was a bit depressed to find out that Qt4 has a floating point spinbox widget (although I didn't obstruct its inclusion in Qt4 QtRuby).
In El's blog about improving the usability of KDE's dialogs she uses spinboxes (yuck!). For instance, I see 'pointer threshold' with a default value of 4 pixels and a possible dynamic range of 1 to 20. This means to use the spinbox to raise the value from 4 to 20 you have to click on it 15 times. Surely this is braindead? If the option has a small range of possible values, it can be a pulldown menu, or if it can be a number with a large range of values, then just let the user type in the number, and validate that they have entered a number. I just hope we can ignore MicroSoft as a paragon of usability expertise and just do the right thing as a result of personal inspiration and peer review like the rest of KDE.


And yet, they serve a need
I understand you don't see the use for spinboxes. I guess you use the computer in such a way that you don't have a need for them. And thats just fine!
Thing is; they do serve a need.
Its a formatted and validated input widget that has a clear representation to show the context and it has a clear interaction method which makes the learning curve very easy.
The Qt ones aren't the best there are; the suffix tends to get screwed quite often. But playing with KOffice spinboxes (which are extended from the normal ones) I would not miss all the functionality spinboxes give me for the world!
* Using scrollwheel to move just a little bit
* Using arrow up/down to move it just a little bit.
* Using the buttons when I don't have a mouse with scrollwheel handy but just my laptop-touchpad. Keep the button down to trigger repeat.
* Being able to copy paste a value from another place.
In KOffice we added a unit convertion; if a user types "1dm" the spinbox will just convert it to inches or mm if thats the current document-wide unit setting.
One feature I've always wanted to implement, but never gotten around to is that if I click on the button it currently already repeats if I keep depressing the button. What I wanted to add is the speed in which the value goes up/down based on the distance my mouse is from the spinbox. So I can move mouse mouse fast to the top of the screen, keeping the mousebutton pressed, and the value goes up quite quickly. Qt has a stupid bahavior that it stops counting as soon as I move the mouse out of the widget
Also I wanted to add modifiers (shift) to make the value increase differently in double-spinboxes. But never got around to doing so...
Anyway, I disagree that they are useless