滑块通知消息

滑块控件通过发送父WM_HSCROLL或WM_VSCROLL消息来通知其用户作的父窗口,具体取决于滑块控件的方向。 若要处理这些消息,请将WM_HSCROLL的处理程序和WM_VSCROLL消息添加到父窗口。 OnHScrollOnVScroll 成员函数将传递通知代码、滑块的位置以及指向 CSliderCtrl 对象的指针。 请注意,即使指针指向对象CSliderCtrl,指针也是类型的CScrollBar *。 如果需要作滑块控件,可能需要键入此指针。

滑块控件发送一组不同的通知代码,而不是使用滚动条通知代码。 仅当用户使用键盘与滑块控件交互时,滑块控件才会发送TB_BOTTOM、TB_LINEDOWN、TB_LINEUP和TB_TOP通知代码。 仅当用户使用鼠标时,才会发送TB_THUMBPOSITION和TB_THUMBTRACK通知消息。 这两种情况下都发送TB_ENDTRACK、TB_PAGEDOWN和TB_PAGEUP通知代码。

下表列出了导致发送通知的滑块控件通知消息和事件(虚拟密钥代码或鼠标事件)。 (有关标准虚拟密钥代码的列表,请参阅 Winuser.h.)

消息通知 导致发送通知的事件
TB_BOTTOM VK_END
TB_ENDTRACK WM_KEYUP(用户发布了发送相关虚拟密钥代码的密钥)
TB_LINEDOWN VK_RIGHT或VK_DOWN
TB_LINEUP VK_LEFT或VK_UP
TB_PAGEDOWN VK_NEXT(用户单击了以下或滑块右侧的频道)
TB_PAGEUP VK_PRIOR(用户单击了滑块上方或左侧的通道)
TB_THUMBPOSITION 遵循TB_THUMBTRACK通知消息WM_LBUTTONUP
TB_THUMBTRACK 滑块移动(用户拖动滑块)
TB_TOP VK_HOME

另请参阅

使用 CSliderCtrl
控件