Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Fornece a funcionalidade do controle de botão giratório comum do Windows.
Sintaxe
class CSpinButtonCtrl : public CWnd
Membros
Construtores Públicos
| Designação | Descrição |
|---|---|
| CSpinButtonCtrl::CSpinButtonCtrl | Constrói um objeto CSpinButtonCtrl. |
Métodos Públicos
| Designação | Descrição |
|---|---|
| CSpinButtonCtrl::Criar | Cria um controle de botão giratório e o anexa a um objeto CSpinButtonCtrl. |
| CSpinButtonCtrl::CreateEx | Cria um controle de botão giratório com os estilos estendidos especificados do Windows e o anexa a um objeto CSpinButtonCtrl. |
| CSpinButtonCtrl::GetAccel | Recupera informações de aceleração para um controle de botão giratório. |
| CSpinButtonCtrl::GetBase | Recupera a base atual para um controle de botão giratório. |
| CSpinButtonCtrl::GetBuddy | Recupera um ponteiro para a janela de amigo atual. |
| CSpinButtonCtrl::GetPos | Recupera a posição atual de um controle de botão giratório. |
| CSpinButtonCtrl::GetRange | Recupera os limites superior e inferior (intervalo) para um controle de botão giratório. |
| CSpinButtonCtrl::SetAccel | Define a aceleração para um controle de botão giratório. |
| CSpinButtonCtrl::SetBase | Define a base para um controle de botão giratório. |
| CSpinButtonCtrl::SetBuddy | Define a janela buddy para um controle de botão giratório. |
| CSpinButtonCtrl::SetPos | Define a posição atual para o controle. |
| CSpinButtonCtrl::SetRange | Define os limites superior e inferior (intervalo) para um controle de botão giratório. |
Comentários
Um "controle de botão giratório" (também conhecido como controle para cima-baixo) é um par de botões de seta em que o usuário pode clicar para incrementar ou diminuir um valor, como uma posição de rolagem ou um número exibido em um controle complementar. O valor associado a um controle de botão giratório é chamado de sua posição atual. Um controle de botão giratório é mais frequentemente usado com um controle companheiro, chamado de "janela de amigos".
Esse controle (e, portanto, a classe CSpinButtonCtrl) está disponível apenas para programas executados no Windows 95/98 e Windows NT versão 3.51 e posterior.
Para o usuário, um controle de botão giratório e sua janela de amigos geralmente se parecem com um único controle. Você pode especificar que um controle de botão giratório se posicione automaticamente ao lado de sua janela de amigo e que ele defina automaticamente a legenda da janela de amigo para sua posição atual. Você pode usar um controle de botão giratório com um controle de edição para solicitar ao usuário a entrada numérica.
Clicar na seta para cima move a posição atual em direção ao máximo e clicar na seta para baixo move a posição atual em direção ao mínimo. Por padrão, o mínimo é 100 e o máximo é 0. Sempre que a configuração mínima for maior do que a configuração máxima (por exemplo, quando as configurações padrão forem usadas), clicar na seta para cima diminui o valor da posição e clicar na seta para baixo o aumenta.
Um controle de botão giratório sem uma janela de amigo funciona como uma espécie de barra de rolagem simplificada. Por exemplo, um controle tab às vezes exibe um controle de botão giratório para permitir que o usuário role guias adicionais para a exibição.
Para obter mais informações sobre como usar o CSpinButtonCtrl, consulte controles e Usando CSpinButtonCtrl.
Hierarquia de herança
CSpinButtonCtrl
Requerimentos
Cabeçalho: afxcmn.h
CSpinButtonCtrl::Criar
Cria um controle de botão giratório e o anexa a um objeto CSpinButtonCtrl.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parâmetros
dwStyle
Especifica o estilo do controle de botão giratório. Aplique qualquer combinação de estilos de controle de botão giratório ao controle. Esses estilos são descritos em Up-Down Estilos de Controle no SDK do Windows.
rect
Especifica o tamanho e a posição do controle de botão giratório. Pode ser um objeto CRect ou uma estrutura RECT
pParentWnd
Um ponteiro para a janela pai do controle de botão giratório, geralmente um CDialog. Não deve ser NULL.
nID
Especifica a ID do controle de botão giratório.
Valor de retorno
Diferente de zero se a inicialização foi bem-sucedida; caso contrário, 0.
Comentários
Você constrói um objeto CSpinButtonCtrl em duas etapas Primeiro, chame o construtor e, em seguida, chame Create, que cria o controle de botão giratório e o anexa ao objeto CSpinButtonCtrl.
Para criar um controle de botão giratório com estilos de janela estendidos, chame CSpinButtonCtrl::CreateEx em vez de Create.
CSpinButtonCtrl::CreateEx
Cria um controle (uma janela filho) e o associa ao objeto CSpinButtonCtrl.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parâmetros
dwExStyle
Especifica o estilo estendido do controle que está sendo criado. Para obter uma lista de estilos estendidos do Windows, consulte o parâmetro dwExStyle para CreateWindowEx no SDK do Windows.
dwStyle
Especifica o estilo do controle de botão giratório. Aplique qualquer combinação de estilos de controle de botão giratório ao controle. Esses estilos são descritos em Up-Down Estilos de Controle no SDK do Windows.
rect
Uma referência a uma estrutura de RECT que descreve o tamanho e a posição da janela a ser criada, nas coordenadas do cliente de pParentWnd.
pParentWnd
Um ponteiro para a janela que é o pai do controle.
nID
ID da janela filho do controle.
Valor de retorno
Diferente de zero se for bem-sucedido; caso contrário, 0.
Comentários
Use CreateEx em vez de Criar para aplicar estilos estendidos do Windows, especificados pela WS_EX_ de prefácio de estilo estendido do Windows.
CSpinButtonCtrl::CSpinButtonCtrl
Constrói um objeto CSpinButtonCtrl.
CSpinButtonCtrl();
CSpinButtonCtrl::GetAccel
Recupera informações de aceleração para um controle de botão giratório.
UINT GetAccel(
int nAccel,
UDACCEL* pAccel) const;
Parâmetros
nAccel
Número de elementos na matriz especificada por pAccel.
pAccel
Ponteiro para uma matriz de UDACCEL estruturas que recebe informações de aceleração.
Valor de retorno
Número de estruturas do acelerador recuperadas.
CSpinButtonCtrl::GetBase
Recupera a base atual para um controle de botão giratório.
UINT GetBase() const;
Valor de retorno
O valor base atual.
CSpinButtonCtrl::GetBuddy
Recupera um ponteiro para a janela de amigo atual.
CWnd* GetBuddy() const;
Valor de retorno
Um ponteiro para a janela de amigos atual.
CSpinButtonCtrl::GetPos
Recupera a posição atual de um controle de botão giratório.
int GetPos() const;
int GetPos32(LPBOOL lpbError = NULL) const;
Parâmetros
lpbError
Um ponteiro para um valor booleano que é definido como zero se o valor for recuperado com êxito ou diferente de zero se ocorrer um erro. Se esse parâmetro for definido como NULL, os erros não serão relatados.
Valor de retorno
A primeira versão retorna a posição atual de 16 bits na palavra de ordem baixa. A palavra de ordem alta é diferente de zero se ocorreu um erro.
A segunda versão retorna a posição de 32 bits.
Comentários
Quando ele processa o valor retornado, o controle atualiza sua posição atual com base na legenda da janela buddy. O controle retornará um erro se não houver nenhuma janela de amigo ou se a legenda especificar um valor inválido ou fora do intervalo.
CSpinButtonCtrl::GetRange
Recupera os limites superior e inferior (intervalo) para um controle de botão giratório.
DWORD GetRange() const;
void GetRange(
int& lower,
int& upper) const;
void GetRange32(
int& lower,
int &upper) const;
Parâmetros
menor
Referência a um inteiro que recebe o limite inferior para o controle.
superior
Referência a um número inteiro que recebe o limite superior para o controle.
Valor de retorno
A primeira versão retorna um valor de 32 bits contendo os limites superior e inferior. A palavra de ordem baixa é o limite superior para o controle, e a palavra de ordem alta é o limite inferior.
Comentários
A função de membro GetRange32 recupera o intervalo do controle de botão giratório como um inteiro de 32 bits.
CSpinButtonCtrl::SetAccel
Define a aceleração para um controle de botão giratório.
BOOL SetAccel(
int nAccel,
UDACCEL* pAccel);
Parâmetros
nAccel
Número de estruturas UDACCEL especificadas por pAccel.
pAccel
Ponteiro para uma matriz de estruturas UDACEL, que contêm informações de aceleração. Os elementos devem ser ordenados em ordem crescente com base no membro nSec.
Valor de retorno
Diferente de zero se for bem-sucedido; caso contrário, 0.
CSpinButtonCtrl::SetBase
Define a base para um controle de botão giratório.
int SetBase(int nBase);
Parâmetros
nBase
Novo valor base para o controle. Pode ser 10 para decimal ou 16 para hexadecimal.
Valor de retorno
O valor de base anterior, se bem-sucedido, ou zero, se uma base inválida for fornecida.
Comentários
O valor base determina se a janela buddy exibe números em dígitos decimais ou hexadecimais. Os números hexadecimais não estão sempre assinados; Os números decimais são assinados.
CSpinButtonCtrl::SetBuddy
Define a janela buddy para um controle de botão giratório.
CWnd* SetBuddy(CWnd* pWndBuddy);
Parâmetros
pWndBuddy
Ponteiro para a nova janela de amigos.
Valor de retorno
Um ponteiro para a janela de amigos anterior.
Comentários
Um controle de rotação é quase sempre associado a outra janela, como um controle de edição, que exibe algum conteúdo. Esta outra janela é chamada de "amigo" do controle de rotação.
CSpinButtonCtrl::SetPos
Define a posição atual para um controle de botão giratório.
int SetPos(int nPos);
int SetPos32(int nPos);
Parâmetros
nPos
Nova posição para o controle. Esse valor deve estar no intervalo especificado pelos limites superior e inferior para o controle.
Valor de retorno
A posição anterior (precisão de 16 bits para SetPos, precisão de 32 bits para SetPos32).
Comentários
SetPos32 define a posição de 32 bits.
CSpinButtonCtrl::SetRange
Define os limites superior e inferior (intervalo) para um controle de botão giratório.
void SetRange(
short nLower,
short nUpper);
void SetRange32(
int nLower,
int nUpper);
Parâmetros
n inferior e nUpper
Limites superior e inferior para o controlo. Para SetRange, nenhum dos limites pode ser superior a UD_MAXVAL ou inferior a UD_MINVAL; Além disso, a diferença entre os dois limites não pode exceder UD_MAXVAL.
SetRange32 não impõe restrições aos limites; Use quaisquer números inteiros.
Comentários
A função de membro SetRange32 define o intervalo de 32 bits para o controle de botão giratório.
Observação
O intervalo padrão para o botão giratório tem o máximo definido 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.
Ver também
CMNCTRL2 de exemplo MFC
CWnd Classe
Gráfico de Hierarquia
CSliderCtrl Classe