Udostępnij przez


Wiadomości powiadomień suwaka

Kontrolka suwaka powiadamia swoje okno nadrzędne o akcjach użytkownika, wysyłając komunikaty WM_HSCROLL lub WM_VSCROLL, w zależności od orientacji kontrolki suwaka. Aby obsłużyć te komunikaty, dodaj procedury obsługi komunikatów WM_HSCROLL i WM_VSCROLL do okna nadrzędnego. Funkcje składowe OnHScroll i OnVScroll otrzymają kod powiadomienia, wskaźnik do obiektu CSliderCtrl oraz położenie suwaka. Należy pamiętać, że wskaźnik jest typu CScrollBar * , mimo że wskazuje CSliderCtrl obiekt. Jeśli musisz manipulować kontrolką suwaka, może być konieczne wpisenie tego wskaźnika.

Zamiast używać kodów powiadomień paska przewijania, kontrolki suwaka wysyłają inny zestaw kodów powiadomień. Kontrolka suwaka wysyła TB_BOTTOM, TB_LINEDOWN, TB_LINEUP i TB_TOP kody powiadomień tylko wtedy, gdy użytkownik wchodzi w interakcję z kontrolką suwaka za pomocą klawiatury. Komunikaty powiadomień TB_THUMBPOSITION i TB_THUMBTRACK są wysyłane tylko wtedy, gdy użytkownik używa myszy. Kody powiadomień TB_ENDTRACK, TB_PAGEDOWN i TB_PAGEUP są wysyłane w obu przypadkach.

W poniższej tabeli wymieniono komunikaty powiadomień kontrolki suwaka oraz zdarzenia (kody kluczy wirtualnych lub zdarzenia myszy), które powodują wysyłanie powiadomień. (Aby uzyskać listę standardowych kodów kluczy wirtualnych, zobacz Winuser.h.)

Komunikat powiadomienia Zdarzenie powodujące wysłanie powiadomienia
TB_BOTTOM VK_END
TB_ENDTRACK WM_KEYUP (użytkownik zwolnił klawisz, który wysłał odpowiedni kod klucza wirtualnego)
TB_LINEDOWN VK_RIGHT lub VK_DOWN
TB_LINEUP VK_LEFT lub VK_UP
TB_PAGEDOWN VK_NEXT (użytkownik kliknął kanał poniżej lub z prawej strony suwaka)
TB_PAGEUP VK_PRIOR (użytkownik kliknął kanał powyżej lub z lewej strony suwaka)
TB_THUMBPOSITION WM_LBUTTONUP następujący po wiadomości powiadomienia TB_THUMBTRACK
TB_THUMBTRACK Przesuwanie suwaka (użytkownik przeciągnął suwak)
TB_TOP VK_HOME

Zobacz także

Korzystanie z CSliderCtrl
Sterowanie