Partager via


Guide pratique pour traiter les messages de notification de la barre de suivi

Les barres de suivi notifient leur fenêtre parente des actions de l’utilisateur en envoyant au parent un WM_HSCROLL ou un message WM_VSCROLL .

Bon à savoir

Technologies

Prérequis

  • C/C++
  • Programmation de l’interface utilisateur Windows

Instructions

Traiter les messages de notification de la barre de suivi

L’exemple de code suivant est une fonction appelée lorsque la fenêtre parente de la barre de suivi reçoit un message WM_HSCROLL . Dans cet exemple, la barre de suivi a le style TBS_ENABLESELRANGE . La position du curseur est comparée à la plage de sélection, et le curseur est déplacé vers la position de début ou de fin de la plage de sélection si nécessaire.

// TBNotifications - handles trackbar notifications received 
// in the wParam parameter of WM_HSCROLL. This function simply 
// ensures that the slider remains within the selection range. 

VOID WINAPI TBNotifications( 
    WPARAM wParam,  // wParam of WM_HSCROLL message 
    HWND hwndTrack, // handle of trackbar window 
    UINT iSelMin,   // minimum value of trackbar selection 
    UINT iSelMax)   // maximum value of trackbar selection 
    { 
    DWORD dwPos;    // current position of slider 

    switch (LOWORD(wParam)) { 
    
        case TB_ENDTRACK:
          
            dwPos = SendMessage(hwndTrack, TBM_GETPOS, 0, 0); 
            
            if (dwPos > iSelMax) 
                SendMessage(hwndTrack, TBM_SETPOS, 
                    (WPARAM) TRUE,       // redraw flag 
                    (LPARAM) iSelMax); 
                    
            else if (dwPos < iSelMin) 
                SendMessage(hwndTrack, TBM_SETPOS, 
                    (WPARAM) TRUE,       // redraw flag 
                    (LPARAM) iSelMin); 
            
            break; 

        default: 
        
            break; 
        } 
} 

Notes

Une boîte de dialogue qui contient une barre de suivi de style TBS_VERT peut utiliser cette fonction lorsqu’elle reçoit un message WM_VSCROLL .

Utilisation des contrôles Trackbar