您的位置:程序门 -> vc/mfc -> 界面



wm_mousewheel的问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


wm_mousewheel的问题
发表于:2007-12-31 08:30:04 楼主
我在一个cformview上放了一个属性页,然后在属性页上,我想响应wm_mousewheel消息,可是,发现进不去onmousewheel,于是我想在父窗口,也就是那个cformview上截获这个消息,于是重载了这个消息处理函数

bool   cpanel::onmousewheel(uint   nflags,   short   zdelta,   cpoint   pt)
{
if(m_sheetpanel.getactiveindex()   ==   0)  
{
                               
                                ((csamplepage*)   m_sheetpanel.getactivepage())-> onmousewheel(nflags,zdelta,pt)   ;
//zdelta   =   (short)   hiword(wparam);         //   wheel   rotation
                  //xpos   =   (short)   loword(lparam);         //   horizontal   position   of   pointer
                //ypos   =   (short)   hiword(lparam);  
//wparam   wparam   =(wparam)   0;
//lparam   lparam   =   (lparam)0;
//wparam   ¦=   zdelta;
                                //loword(lparam) ¦=ypos;
//::sendmessage(m_sheetpanel.getactivepage(),wm_mousewheel,   wparam   ,   lparam);

}

return   cformview::onmousewheel(nflags,   zdelta,   pt);
}
可是却发现,propertypage一直在处理这个消息,一遍遍的循环一直到程序崩溃。
于是我想直接向控件发这个消息,可是不知道wparam,lparam怎么设置,请高手指教!
发表于:2007-12-31 08:34:221楼 得分:0
在属性页的类里,重载pretranslatemessage函数,里面拦截wm_mousewheel消息
发表于:2007-12-31 08:41:362楼 得分:0
//::sendmessage(m_sheetpanel.getactivepage(),wm_mousewheel,       wparam       ,       lparam);  
return   0;//发送消息之后return一下


快速检索

最新资讯
热门点击