在用滑鼠單擊捲動列或者拖動捲動方塊時,Windows給視窗訊息處理程式傳送WM_VSCROLL(供上下移動)和WM_HSCROLL(供左右移動)訊息。在捲動列上的每個滑鼠動作都至少產生兩個訊息,一條在按下滑鼠按鈕時產生,一條在釋放按鈕時產生。
和所有的訊息一樣, WM_VSCROLL和WM_HSCROLL也帶有wParam和lParam訊息參數。對於來自作為視窗的一部分而建立的捲動列訊息,您可以忽略lParam;它只用於作為子視窗而建立的捲動列(通常在對話方塊內)。
wParam訊息參數被分為一個低字組和一個高字組。wParam的低字組是一個數值,它指出了滑鼠對捲動列進行的操作。這個數值被看作一個「通知碼」。通知碼的值由以SB(代表「scroll bar(捲動列)」)開頭的識別字定義。以下是在WINUSER.H中定義的通知碼:
#define SB_LINEUP 0
#define SB_LINELEFT 0
#define SB_LINEDOWN 1
#define SB_LINERIGHT 1
#define SB_PAGEUP 2
#define SB_PAGELEFT 2
#define SB_PAGEDOWN 3
#define SB_PAGERIGHT 3
#define SB_THUMBPOSITION 4
#define SB_THUMBTRACK 5
#define SB_TOP 6
#define SB_LEFT 6
#define SB_BOTTOM 7
#define SB_RIGHT 7
#define SB_ENDSCROLL 8
包含LEFT和RIGHT的識別字用於水平捲動列,包含UP、DOWN、TOP和BOTTOM的識別字用於垂直捲動列。