Come elaborare i messaggi di notifica della barra di rilevamento
Le barre di avanzamento notificano alla finestra padre le azioni dell'utente inviando all'elemento padre un WM_HSCROLL o WM_VSCROLL messaggio.
Informazioni importanti
Tecnologie
Prerequisiti
- C/C++
- Programmazione dell'interfaccia utente di Windows
Istruzioni
Elaborare i messaggi di notifica della barra di rilevamento
L'esempio di codice seguente è una funzione chiamata quando la finestra padre della barra di rilevamento riceve un messaggio di WM_HSCROLL . La barra di avanzamento in questo esempio ha lo stile TBS_ENABLEedizione Standard LRANGE. La posizione del dispositivo di scorrimento viene confrontata con l'intervallo di selezione e il dispositivo di scorrimento viene spostato nella posizione iniziale o finale dell'intervallo di selezione quando necessario.
// 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;
}
}
Osservazioni:
Una finestra di dialogo contenente un TBS_VERT barra dei tracciati di stile può usare questa funzione quando riceve un messaggio di WM_VSCROLL.
Argomenti correlati
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: nel corso del 2024 verranno dismessi i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedere:Invia e visualizza il feedback per