Usando CSpinButtonCtrl
O controle do botão de rotação (também conhecido como controle para cima e para baixo) fornece um par de setas que um usuário pode clicar para ajustar um valor. Esse valor é conhecido como a posição atual. A posição permanece dentro do intervalo do botão de rotação. Quando o usuário clica na seta para cima, a posição se move em direção ao máximo; e quando o usuário clica na seta para baixo, a posição se move em direção ao mínimo.
O controle de botão de rotação é representado no MFC pela classe CSpinButtonCtrl.
Observação
O intervalo padrão para o botão de rotação tem o conjunto máximo como zero (0) e o mínimo definido como 100. Como o valor máximo é menor que o valor mínimo, clicar na seta para cima diminuirá a posição, e clicar na seta para baixo a aumentará. Use CSpinButtonCtrl::SetRange para ajustar esses valores.
Normalmente, a posição atual é exibida em um controle complementar. O controle complementar é conhecido como a janela buddy. Para obter uma ilustração de um controle de botão de rotação, consulte Sobre controles para cima e para baixo no SDK do Windows.
Para criar um controle de rotação e uma janela buddy de controle de edição, no Visual Studio, primeiro arraste um controle de edição para a caixa de diálogo ou janela e então arraste um controle de rotação. Selecione o controle de rotação e defina suas propriedades de Auto buddy e Definir inteiro de buddy como True. Defina também a propriedade Alignment; o Right Align é o mais usual. Com essas configurações, o controle de edição é definido como a janela buddy porque ela precede diretamente o controle de edição na ordem de tabulação. O controle de edição exibe inteiros, e o controle de rotação é inserido no lado direito do controle de edição. Opcionalmente, você pode definir o intervalo válido do controle de rotação usando o método CSpinButtonCtrl::SetRange. Nenhum manipulador de eventos é necessário para a comunicação entre o controle de rotação e a janela buddy, porque eles trocam dados diretamente. Se você usar um controle de rotação para alguma outra finalidade, por exemplo, para paginar por uma sequência de janelas ou caixas de diálogo, adicione então um manipulador para a mensagem UDN_DELTAPOS e execute sua ação personalizada lá.