📄 subject_25683.htm
字号:
<p>
序号:25683 发表者:萧马 发表日期:2002-12-24 19:55:51
<br>主题:请问:如何在IDD_FORMVIEW对话框中实现滚轮操作?
<br>内容:该IDD_FORMVIEW对应的视图类为CDaoRecordView,如何实现:<BR>上下移动鼠标滚轮时,页面也跟着移动?<BR>谢谢!
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:songxinye 回复日期:2002-12-24 20:05:39
<br>内容:先用CDaoRecordView派生自己的类,写WM_MOUSEWHEEL的函数,然后在使用自定义类
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-24 20:15:51
<br>内容:重载了WM_MOUSEWHEEL函数,可以在里面直接写代码不行么?还要自定义类?<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-24 22:19:14
<br>内容:都过圣诞节去了么?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:songxinye 回复日期:2002-12-24 22:55:16
<br>内容:可以,不过派生你自己的可以到处用
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-24 23:08:35
<br>内容:有理!!能否近一步提示,或者有相关例子?<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:songxinye 回复日期:2002-12-24 23:48:45
<br>内容:这是例子,不过是直接用的,如果用自己的派生类做法相同,但鼠标在控件内才能用这是区别
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-25 00:37:16
<br>内容:干脆把图贴上:<BR>就是想在这里面实现滚轮操作。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-25 00:42:10
<br>内容:图在此:<BR>基于CDaoRecordView的IDD_FORMVIEW对话框
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:songxinye 回复日期:2002-12-25 01:43:39
<br>内容:是滚窗口还是记录,窗口的代码与我给你的对话框相同,只是操作父窗口的滚动条,<BR>记录就更容易了,在消息的函数中,取前一条或后一条,根据变量的正负决定,也就是滚轮方向
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-25 01:54:29
<br>内容:操作滚动条,你那个m_f可是列表控件
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-25 02:01:45
<br>内容:不好意思,待俺明天仔细研究你那段代码,睡觉去了,呵呵,谢谢你。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-25 10:04:21
<br>内容:songxinye,你给的例子好像不是操作符窗口而是操作列表控件,如果将窗口拉大,滚轮促发的是列表控件的滚动条,而非主窗口的滚动条<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:萧马 回复日期:2002-12-25 10:58:57
<br>内容:问题解决了,实现代码如下:<BR>BOOL CEmployeeView::OnMouseWheel(UINT nFlags, short zDelta, CPoint pt) <BR>{<BR> int p,max,min;<BR> this->GetScrollRange(SB_VERT,&min,&max);<BR> p=this->GetScrollPos(SB_VERT);<BR> if(zDelta<0)<BR> {<BR> p=p+10;<BR> if(p>max)<BR> p=max;<BR> }<BR> else<BR> {<BR> p=p-10;<BR> if(p<0)<BR> p=0;<BR> }<BR> CEmployeeView::OnVScroll(SB_THUMBTRACK,p,NULL);<BR> return CDaoRecordView::OnMouseWheel(nFlags, zDelta, pt);<BR>}如果还有更好的实现方法,请不吝赐教。<BR><BR>谢谢songxinye!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -