滚动条消息
内容提要
添加滚动条
用户对滚动条的五种操作
响应滚动条的任务分工:
Windows的任务
应用程序的任务
滚动条消息描述
滚动条消息处理过程
示例:为图形组件信息程序添加滚动条
添加滚动条
hwnd = CreateWindow (
szAppName,
TEXT ("Get System Metrics No. 1"), WS_OVERLAPPEDWINDOW
|WS_HSCROLL|WS_VSCROLL,
CW_USEDEFAULT, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, hInstance, NULL) ;
用户对滚动条的五种操作
Windows的任务
接收所有滚动条鼠标事件
当使用者在滚动条内单击鼠标时,提供一种“反相显示”的闪烁
当使用者在滚动条内拖动滚动框时,移动滚动框
为包含滚动条窗口的窗口过程发送滚动条消息
应用程序的任务
初始化滚动条的范围和滚动框的位置
处理窗口过程的滚动条消息
更新滚动条内滚动框的位置
更改客户区的内容以响应对滚动条的更改
滚动条消息描述
消息名称:
WM_VSCROLL(垂直滚动)
WM_HSCROLL(水平滚动)
消息的附加参数:
LOWORD(wParam) →鼠标对滚动条进行的具体操作如:上滚1行、下滚1页、拖动滚动框等。
HIWORD (wParam) →拖动时滚动框的当前位置
lParam消息参数→仅用于作为控件的滚动条消息中
wParam的低字取值
#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
wParam的低字取值
#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
wParam值所对应的鼠标操作
滚动条消息 来自淘豆网m.daumloan.com转载请标明出处.