Classe CSpinButtonCtrl

Fornisce la funzionalità del controllo pulsante di selezione comune di Windows.

Sintassi

class CSpinButtonCtrl : public CWnd

Membri

Costruttori pubblici

Nome Descrizione
CSpinButtonCtrl::CSpinButtonCtrl Costruisce un oggetto CSpinButtonCtrl.

Metodi pubblici

Nome Descrizione
CSpinButtonCtrl::Create Crea un controllo pulsante di selezione e lo collega a un CSpinButtonCtrl oggetto .
CSpinButtonCtrl::CreateEx Crea un controllo pulsante di selezione con gli stili estesi di Windows specificati e lo associa a un CSpinButtonCtrl oggetto .
CSpinButtonCtrl::GetAccel Recupera le informazioni sull'accelerazione per un controllo pulsante di selezione.
CSpinButtonCtrl::GetBase Recupera la base corrente per un controllo pulsante di selezione.
CSpinButtonCtrl::GetBuddy Recupera un puntatore alla finestra corrente.
CSpinButtonCtrl::GetPos Recupera la posizione corrente di un controllo pulsante di selezione.
CSpinButtonCtrl::GetRange Recupera i limiti superiori e inferiori (intervallo) per un controllo pulsante di selezione.
CSpinButtonCtrl::SetAccel Imposta l'accelerazione per un controllo pulsante di selezione.
CSpinButtonCtrl::SetBase Imposta la base per un controllo pulsante di selezione.
CSpinButtonCtrl::SetBuddy Imposta la finestra del compagno per un controllo pulsante di selezione.
CSpinButtonCtrl::SetPos Imposta la posizione corrente per il controllo .
CSpinButtonCtrl::SetRange Imposta i limiti superiori e inferiori (intervallo) per un controllo pulsante di selezione.

Osservazioni:

Un "controllo pulsante di selezione" (noto anche come controllo di scorrimento) è una coppia di pulsanti freccia che l'utente può fare clic per incrementare o decrementare un valore, ad esempio una posizione di scorrimento o un numero visualizzato in un controllo complementare. Il valore associato a un controllo pulsante di selezione viene chiamato posizione corrente. Un controllo pulsante di selezione viene usato più spesso con un controllo complementare, denominato "finestra amico".

Questo controllo (e quindi la CSpinButtonCtrl classe ) è disponibile solo per i programmi in esecuzione in Windows 95/98 e Windows NT versione 3.51 e successive.

Per l'utente, un controllo pulsante di selezione e la relativa finestra amico sono spesso simili a un singolo controllo. È possibile specificare che un controllo pulsante di selezione si posiziona automaticamente accanto alla finestra del compagno e che imposta automaticamente la didascalia della finestra del compagno sulla posizione corrente. È possibile usare un controllo pulsante di selezione con un controllo di modifica per richiedere all'utente l'input numerico.

Facendo clic sulla freccia su, la posizione corrente viene spostata verso il massimo e facendo clic sulla freccia giù la posizione corrente viene spostata verso il minimo. Per impostazione predefinita, il valore minimo è 100 e il valore massimo è 0. Ogni volta che l'impostazione minima è maggiore dell'impostazione massima (ad esempio, quando vengono usate le impostazioni predefinite), facendo clic sulla freccia su viene ridotto il valore della posizione e facendo clic sulla freccia giù viene aumentata.

Un controllo pulsante di selezione senza una finestra amico funziona come una sorta di barra di scorrimento semplificata. Ad esempio, un controllo struttura a schede a volte visualizza un controllo pulsante di selezione per consentire all'utente di scorrere altre schede nella visualizzazione.

Per altre informazioni sull'uso CSpinButtonCtrldi , vedere Controlli e uso di CSpinButtonCtrl.

Gerarchia di ereditarietà

CObject

CCmdTarget

CWnd

CSpinButtonCtrl

Requisiti

Intestazione: afxcmn.h

CSpinButtonCtrl::Create

Crea un controllo pulsante di selezione e lo collega a un CSpinButtonCtrl oggetto.

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parametri

dwStyle
Specifica lo stile del controllo pulsante di selezione. Applicare qualsiasi combinazione di stili di controllo pulsante di selezione al controllo . Questi stili sono descritti in Stili di controllo su giù in Windows SDK.

rect
Specifica le dimensioni e la posizione del controllo pulsante di selezione. Può essere un oggetto CRect o una struttura RECT

pParentWnd
Puntatore alla finestra padre del controllo pulsante di selezione, in genere un oggetto CDialog. Non deve essere NULL.

nID
Specifica l'ID del controllo pulsante di selezione.

Valore restituito

Diverso da zero se l'inizializzazione ha avuto esito positivo; in caso contrario, 0.

Osservazioni:

Si costruisce un CSpinButtonCtrl oggetto in due passaggi Prima, chiamare il costruttore e quindi chiamare Create, che crea il controllo pulsante di selezione e lo collega all'oggetto CSpinButtonCtrl .

Per creare un controllo pulsante di selezione con stili di finestra estesi, chiamare CSpinButtonCtrl::CreateEx anziché Create.

CSpinButtonCtrl::CreateEx

Crea un controllo (una finestra figlio) e lo associa all'oggetto CSpinButtonCtrl .

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parametri

dwExStyle
Specifica lo stile esteso del controllo da creare. Per un elenco degli stili di windows estesi, vedere il parametro dwExStyle per CreateWindowEx in Windows SDK.

dwStyle
Specifica lo stile del controllo pulsante di selezione. Applicare qualsiasi combinazione di stili di controllo pulsante di selezione al controllo . Questi stili sono descritti in Stili di controllo su giù in Windows SDK.

rect
Riferimento a una struttura RECT che descrive le dimensioni e la posizione della finestra da creare, nelle coordinate client di pParentWnd.

pParentWnd
Puntatore alla finestra padre del controllo.

nID
ID finestra figlio del controllo.

Valore restituito

Diverso da zero se ha esito positivo; in caso contrario 0.

Osservazioni:

Usare CreateEx invece di Crea per applicare stili di Windows estesi, specificati dalla prefazione dello stile esteso di Windows WS_EX_.

CSpinButtonCtrl::CSpinButtonCtrl

Costruisce un oggetto CSpinButtonCtrl.

CSpinButtonCtrl();

CSpinButtonCtrl::GetAccel

Recupera le informazioni sull'accelerazione per un controllo pulsante di selezione.

UINT GetAccel(
    int nAccel,
    UDACCEL* pAccel) const;

Parametri

nAccel
Numero di elementi nella matrice specificata da pAccel.

pAccel
Puntatore a una matrice di strutture UDACCEL che ricevono informazioni sull'accelerazione.

Valore restituito

Numero di strutture dell'acceleratore recuperate.

CSpinButtonCtrl::GetBase

Recupera la base corrente per un controllo pulsante di selezione.

UINT GetBase() const;

Valore restituito

Valore di base corrente.

CSpinButtonCtrl::GetBuddy

Recupera un puntatore alla finestra corrente.

CWnd* GetBuddy() const;

Valore restituito

Puntatore alla finestra corrente dell'amico.

CSpinButtonCtrl::GetPos

Recupera la posizione corrente di un controllo pulsante di selezione.

int GetPos() const;  int GetPos32(LPBOOL lpbError = NULL) const;

Parametri

lpbError
Puntatore a un valore booleano impostato su zero se il valore viene recuperato correttamente o diverso da zero se si verifica un errore. Se questo parametro è impostato su NULL, gli errori non vengono segnalati.

Valore restituito

La prima versione restituisce la posizione corrente a 16 bit nella parola con ordine basso. Se si è verificato un errore, la parola di ordine elevato è diversa da zero.

La seconda versione restituisce la posizione a 32 bit.

Osservazioni:

Quando elabora il valore restituito, il controllo aggiorna la posizione corrente in base alla didascalia della finestra del compagno. Il controllo restituisce un errore se non è presente alcuna finestra o se la didascalia specifica un valore non valido o non compreso nell'intervallo.

CSpinButtonCtrl::GetRange

Recupera i limiti superiori e inferiori (intervallo) per un controllo pulsante di selezione.

DWORD GetRange() const;

void GetRange(
    int& lower,
    int& upper) const;

void GetRange32(
    int& lower,
    int &upper) const;

Parametri

abbassare
Riferimento a un numero intero che riceve il limite inferiore per il controllo .

superiore
Riferimento a un numero intero che riceve il limite superiore per il controllo.

Valore restituito

La prima versione restituisce un valore a 32 bit contenente i limiti superiori e inferiori. La parola di ordine basso è il limite superiore per il controllo e la parola di ordine elevato è il limite inferiore.

Osservazioni:

La funzione GetRange32 membro recupera l'intervallo del controllo pulsante di selezione come intero a 32 bit.

CSpinButtonCtrl::SetAccel

Imposta l'accelerazione per un controllo pulsante di selezione.

BOOL SetAccel(
    int nAccel,
    UDACCEL* pAccel);

Parametri

nAccel
Numero di strutture UDACCEL specificate da pAccel.

pAccel
Puntatore a una matrice di strutture UDACCEL che contengono informazioni sull'accelerazione. Gli elementi devono essere ordinati in ordine crescente in base al nSec membro.

Valore restituito

Diverso da zero se ha esito positivo; in caso contrario 0.

CSpinButtonCtrl::SetBase

Imposta la base per un controllo pulsante di selezione.

int SetBase(int nBase);

Parametri

nBase
Nuovo valore di base per il controllo. Può essere 10 per decimal o 16 per esadecimale.

Valore restituito

Valore di base precedente se ha esito positivo o zero se viene specificata una base non valida.

Osservazioni:

Il valore di base determina se la finestra dell'amico visualizza i numeri in cifre decimali o esadecimali. I numeri esadecimali sono sempre senza segno; i numeri decimali sono firmati.

CSpinButtonCtrl::SetBuddy

Imposta la finestra del compagno per un controllo pulsante di selezione.

CWnd* SetBuddy(CWnd* pWndBuddy);

Parametri

pWndBuddy
Puntatore alla nuova finestra del amico.

Valore restituito

Puntatore alla finestra precedente dell'amico.

Osservazioni:

Un controllo di selezione è quasi sempre associato a un'altra finestra, ad esempio un controllo di modifica, che visualizza alcuni contenuti. Questa altra finestra è denominata "amico" del controllo spin.

CSpinButtonCtrl::SetPos

Imposta la posizione corrente per un controllo pulsante di selezione.

int SetPos(int nPos);
int SetPos32(int nPos);

Parametri

nPos
Nuova posizione per il controllo. Questo valore deve essere compreso nell'intervallo specificato dai limiti superiori e inferiori per il controllo.

Valore restituito

Posizione precedente (precisione a 16 bit per SetPos, precisione a 32 bit per SetPos32).

Osservazioni:

SetPos32 imposta la posizione a 32 bit.

CSpinButtonCtrl::SetRange

Imposta i limiti superiori e inferiori (intervallo) per un controllo pulsante di selezione.

void SetRange(
    short nLower,
    short nUpper);

void SetRange32(
    int nLower,
    int nUpper);

Parametri

nLower e nUpper
Limiti superiori e inferiori per il controllo. Per SetRange, nessun limite può essere maggiore di UD_MAXVAL o minore di UD_MINVAL; inoltre, la differenza tra i due limiti non può superare UD_MAXVAL. SetRange32 non pone restrizioni ai limiti; utilizzare tutti i numeri interi.

Osservazioni:

La funzione SetRange32 membro imposta l'intervallo a 32 bit per il controllo pulsante di selezione.

Nota

L'intervallo predefinito per il pulsante di selezione ha il valore massimo impostato su zero (0) e il valore minimo impostato su 100. Poiché il valore massimo è minore del valore minimo, facendo clic sulla freccia su si ridurrà la posizione e facendo clic sulla freccia giù verrà aumentata. Usare CSpinButtonCtrl::SetRange per regolare questi valori.

Vedi anche

CMNCTRL2 di esempio MFC
Classe CWnd
Grafico della gerarchia
Classe CSliderCtrl