Partager via


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.

Valeur Signification
SB_CTL
Définit les paramètres d’un contrôle de barre de défilement. Le paramètre hwnd doit être la poignée du contrôle de barre de défilement.
SB_HORZ
Définit les paramètres de la barre de défilement horizontale standard de la fenêtre.
SB_VERT
Définit les paramètres de la barre de défilement verticale standard de la fenêtre.

[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
SIF_DISABLENOSCROLL
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.
SIF_PAGE
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.
SIF_POS
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.
SIF_RANGE
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

GetScrollInfo

Référence

SCROLLINFO