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 CSpinButtonCtrl
di , vedere Controlli e uso di CSpinButtonCtrl.
Gerarchia di ereditarietà
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