2010-08-19 6 views
1

J'ai un contrôle où j'utilise SetScrollInfo (user32) pour définir le nMin et nMax. Comment puis-je calculer la bonne taille de la nPage (ou la vignette)? Je sais que ça doit être un pourcentage de la clientèle, mais je ne suis pas vraiment sûr du calcul. Je suis pas en utilisant AutoScroll et les propriétés associées de sorte que je peux avoir un contrôle maximal sur le défilement.Calculer barre de défilement thumtrack taille

Répondre

1

Je pense que la documentation de MSDN (Scroll Box Position and Scrolling Range) répond à votre question. Un extrait:

Vous pouvez définir un format de page pour une barre de défilement . Le format de la page représente le nombre d'unités de données pouvant correspondre à la zone client de la fenêtre propriétaire étant donné sa taille actuelle. Par exemple, si la zone client peut contenir 16 lignes de texte, une application pourrait définir la taille de la page à 16. Le système utilise la taille de page , ainsi que la gamme le défilement et la longueur de l'arbre barre de défilement, pour définir la taille de la boîte de défilement . Chaque fois qu'une fenêtre contenant une barre de défilement est redimensionnée, une application doit appeler la fonction SetScrollInfo pour définir la taille de la page.

+0

Yup! Vous êtes sur place avec ça. Merci! – TheCloudlessSky