Funzione SetScrollPos (winuser.h)
La funzione SetScrollPos imposta la posizione della casella di scorrimento (pollice) nella barra di scorrimento specificata e, se richiesto, ridisegna la barra di scorrimento in modo da riflettere la nuova posizione della casella di scorrimento.
Sintassi
int SetScrollPos(
[in] HWND hWnd,
[in] int nBar,
[in] int nPos,
[in] BOOL bRedraw
);
Parametri
[in] hWnd
Tipo: HWND
Gestire un controllo barra di scorrimento o una finestra con una barra di scorrimento standard, a seconda del valore del parametro nBar .
[in] nBar
Tipo: int
Specifica la barra di scorrimento da impostare. Questo parametro può avere uno dei valori seguenti.
[in] nPos
Tipo: int
Specifica la nuova posizione della casella di scorrimento. La posizione deve essere compresa nell'intervallo di scorrimento. Per altre informazioni sull'intervallo di scorrimento, vedere la funzione SetScrollRange .
[in] bRedraw
Tipo: BOOL
Specifica se la barra di scorrimento viene ridisegnata per riflettere la nuova posizione della casella di scorrimento. Se questo parametro è TRUE, la barra di scorrimento viene ridisegnata. Se è FALSE, la barra di scorrimento non viene ridisegnata.
Valore restituito
Tipo: int
Se la funzione ha esito positivo, il valore restituito corrisponde alla posizione precedente della casella di scorrimento.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Se la barra di scorrimento viene ridisegnata da una chiamata successiva a un'altra funzione, è utile impostare il parametro bRedraw su FALSE .
Poiché i messaggi che indicano la posizione della barra di scorrimento, WM_HSCROLL e WM_VSCROLL, sono limitati a 16 bit di dati di posizione, le applicazioni che si basano esclusivamente su tali messaggi per i dati di posizione hanno un valore massimo pratico di 65.535 per il parametro nPos della funzione SetScrollPos.
Tuttavia, poiché le funzioni SetScrollInfo, SetScrollPos,SetScrollRange, GetScrollInfo, GetScrollPos e GetScrollRange supportano i dati di posizione della barra di scorrimento a 32 bit, esiste un modo per aggirare la barriera a 16 bit della WM_HSCROLL e dei messaggi WM_VSCROLL . Per una descrizione della tecnica, vedere GetScrollInfo .
Se il parametro nBar è SB_CTL e la finestra specificata dal parametro hWnd non è un controllo barra di scorrimento di sistema, il sistema invia il messaggio SBM_SETPOS alla finestra per impostare le informazioni sulla barra di scorrimento. Ciò consente a SetScrollPos di operare su un controllo personalizzato che simula una barra di scorrimento. Se la finestra non gestisce il messaggio SBM_SETPOS , la funzione SetScrollPos ha esito negativo.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winuser.h (include Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |
Set di API | ext-ms-win-ntuser-misc-l1-2-0 (introdotto in Windows 8.1) |
Vedi anche
Riferimento