如何处理子窗口滚动条的消息
在程序里有个LISTBOX的窗口,他的类型中有WS_VSCROLL
我想在程序里对他的滚动条进行处理.应该怎么做
[解决办法]
窗口子类化
LRESULT CALLBACK ListBoxScrollSubProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int id = GetWindowLong(hwnd, GWL_ID) ;// 获得子窗口的ID号
switch(message)
{
case WS_VSCROLL:
...
break ;
}
return CallWindowProc(ID,hwnd, message, wParam, lParam) ; // ID为LISTBOX 的ID号。
}
[解决办法]
在窗口的初始化函数里加如下语句,更换list的窗口处理过程就行了
SetWindowLong(m_list.m_hWnd,GWL_WNDPROC,(long)ListBoxScrollSubProc)