Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Suwaki powiadamiają okno nadrzędne o akcjach użytkownika, wysyłając do okna nadrzędnego komunikat WM_HSCROLL lub komunikat WM_VSCROLL.
Co musisz wiedzieć
Technologie
Warunki wstępne
- C/C++
- Programowanie interfejsu użytkownika systemu Windows
Instrukcje
Przetwarzanie komunikatów powiadomień paska śledzenia
Poniższy przykład kodu to funkcja wywoływana, gdy okno nadrzędne paska śledzenia odbiera komunikat WM_HSCROLL. Pasek trackbar w tym przykładzie ma styl TBS_ENABLESELRANGE. Położenie suwaka jest porównywane z zakresem zaznaczenia, a suwak jest przesuwany do pozycji początkowej lub końcowej zakresu zaznaczenia w razie potrzeby.
// 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;
}
}
Uwagi
Okno dialogowe zawierające suwak w stylu TBS_VERT może używać tej funkcji po odebraniu komunikatu WM_VSCROLL.
Tematy pokrewne