Here is an application where spinner buttons fire change events that are counted and displayed: spinner2.
The listener is attached to the spinner tags with the valueChangeListener attribute just as they are attached to standard tags (see ch. 7): index.jsp.
public class CreditCardExpiration {
private int changes = 0;
// to demonstrate the value change listener
public void changeListener(ValueChangeEvent e) {
changes++;
}
}