Fonction SetScrollInfo (winuser.h)
La fonction SetScrollInfo définit les paramètres d’une barre de défilement, notamment les positions de défilement minimales et maximales, la taille de la page et la position de la zone de défilement (pouce). La fonction redessine également la barre de défilement, si nécessaire.
Syntaxe
int SetScrollInfo(
[in] HWND hwnd,
[in] int nBar,
[in] LPCSCROLLINFO lpsi,
[in] BOOL redraw
);
Paramètres
[in] hwnd
Type : HWND
Gérez un contrôle de barre de défilement ou une fenêtre avec une barre de défilement standard, en fonction de la valeur du paramètre fnBar .
[in] nBar
Type : int
Spécifie le type de barre de défilement pour lequel définir les paramètres. Ce paramètre peut prendre les valeurs suivantes.
[in] lpsi
Type : LPCSCROLLINFO
Pointeur vers une structure SCROLLINFO . Avant d’appeler SetScrollInfo, définissez le membre cbSize de la structure sur sizeof(SCROLLINFO), définissez le membre fMask pour indiquer les paramètres à définir et spécifiez les nouvelles valeurs de paramètre dans les membres appropriés.
Le membre fMask peut être une ou plusieurs des valeurs suivantes.
Valeur | Signification |
---|---|
|
Désactive la barre de défilement au lieu de la supprimer, si les nouveaux paramètres de la barre de défilement rendent la barre de défilement inutile. |
|
Définit la page de défilement sur la valeur spécifiée dans le membre nPage de la structure SCROLLINFO pointée par lpsi. |
|
Définit la position de défilement sur la valeur spécifiée dans le membre nPos de la structure SCROLLINFO pointée vers lpsi. |
|
Définit la plage de défilement sur la valeur spécifiée dans les membres nMin et nMax de la structure SCROLLINFO pointée par lpsi. |
[in] redraw
Type : BOOL
Spécifie si la barre de défilement est redessinée pour refléter les modifications apportées à la barre de défilement. Si ce paramètre a la valeur TRUE, la barre de défilement est redessinée, sinon, elle n’est pas redessinée.
Valeur retournée
Type : int
La valeur de retour est la position actuelle de la zone de défilement.
Remarques
La fonction SetScrollInfo vérifie la plage sur les valeurs spécifiées par les membres nPage et nPos de la structure SCROLLINFO . Le membre nPage doit spécifier une valeur comprise entre 0 et nMax - nMin +1. Le membre nPos doit spécifier une valeur comprise entre nMin et nMax - max( nPage– 1, 0). Si l’une ou l’autre valeur est au-delà de sa plage, la fonction la définit sur une valeur qui se trouve juste à l’intérieur de la plage.
Si le paramètre fnBar est SB_CTL et que la fenêtre spécifiée par le paramètre hwnd n’est pas un contrôle de barre de défilement système, le système envoie le message SBM_SETSCROLLINFO à la fenêtre pour définir les informations de la barre de défilement (le système peut optimiser le message sur SBM_SETPOS ou SBM_SETRANGE si la requête concerne uniquement la position ou la plage). Cela permet à SetScrollInfo de fonctionner sur un contrôle personnalisé qui imite une barre de défilement. Si la fenêtre ne gère pas SBM_SETSCROLLINFO (ou le message SBM_SETPOS ou SBM_SETRANGE optimisé), la fonction SetScrollInfo échoue.
Pour obtenir un exemple, consultez Défilement du texte avec le message WM_PAINT.
Spécifications
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | winuser.h (inclure Windows.h) |
Bibliothèque | User32.lib |
DLL | User32.dll |
Ensemble d’API | ext-ms-win-ntuser-misc-l1-2-0 (introduit dans Windows 8.1) |
Voir aussi
Référence