使用WM_MOUSEWHEEL
需要把CWnd设定为Focus
ON_WM_MOUSEWHEEL( )
CWnd::OnMouseWheel
afx_msg BOOL OnMouseWheel( UINT nFlags, short zDelta, CPoint pt )
返回值:如果允许鼠标轮滚动,则返回非零值;否则返回0。
参数:
nFlags 指明是否按下了虚拟键。这个参数可以是下列值的组合:
· MK_CONTROL 如果CTRL键被按下,则设置此位。
· MK_LBUTTON 如果鼠标左键被按下,则设置此位。
· MK_MBUTTON 如果鼠标中键被按下,则设置此位。
· MK_RBUTTON 如果鼠标右键被按下,则设置此位。
· MK_SHIFT 如果SHIFT键被按下,则设置此位。
zDelta 指明了旋转的距离。zDelta值以WHEEL_DELTA,即120的倍数或部分的形式表达。小于零的数表明往回滚动(向着用户),而大于零的数表明滚向远处(离开用户)。用户可以在鼠标软件中改变滚轮设置以反转这种响应。有关这个参数的更多信息参见说明部分。
pt 指定了光标的x和y轴坐标。这些坐标通常是相对于窗口的左上角的。
左键点击控件,按下F11打开控件属性列表,选择events标签页,其中有OnMouseWheelUp和OnMouseWheelDown两个事件,双击右面空白表格,就会在代码中自动生成两个方法,在鼠标滚轮滚动时,就会进入这两个函数,分别是向上滚动和向下滚动。这个实在没有代码需要添加。。。。
<RichTextBox Name="rtb" MouseWheel="RichTextBox_MouseWheel" />看好了,这个是在xaml里的写法,在c#里写要用+=
rtb.MouseWheel += new MouseWheelEventHandler(RichTextBox_MouseWheel)void RichTextBox_MouseWheel(object sender, MouseWheelEventArgs e)
{
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)