我想用鼠标(在可户区)的移动来控制滚动条的移动,我是在OnMouseMove中加入ScrollToPosition这个函数来实现的!!!
但是有一个问题:当图片的高或者宽只有一方客小于户区时,也就是只出现水平滚动条或垂直滚动条时,我移动鼠标ScrollToPosition()对没有出现的那个滚动条也起作用,这样的话客户区内的图片就乱移动(没有滚动条的向相反的方向移动)!我又用GetScrollRange(int nBar,LPINT lpMinPos,LPINT lpMaxPos)这个函数来判断是否有滚动条,以防止没有滚动条的就不执行滚动操作,但是在图片完全小于或者完全大于客户区时正常返回,一旦高或者宽只有一方小于可户区时,大于的可正常返回,但小于的最大值始终返回为100,应该为0呀!!!
求高手指点,我该如何修改???
谢谢!!!!
但是有一个问题:当图片的高或者宽只有一方客小于户区时,也就是只出现水平滚动条或垂直滚动条时,我移动鼠标ScrollToPosition()对没有出现的那个滚动条也起作用,这样的话客户区内的图片就乱移动(没有滚动条的向相反的方向移动)!我又用GetScrollRange(int nBar,LPINT lpMinPos,LPINT lpMaxPos)这个函数来判断是否有滚动条,以防止没有滚动条的就不执行滚动操作,但是在图片完全小于或者完全大于客户区时正常返回,一旦高或者宽只有一方小于可户区时,大于的可正常返回,但小于的最大值始终返回为100,应该为0呀!!!
求高手指点,我该如何修改???
谢谢!!!!
解决方案 »
- 如何单击按钮弹出浏览对话框~~~
- 注册表访问问题...急、急、急
- CComPtr的特化版本如何调用
- 关于使用微软MSCOMM串口控件的问题,求助
- 怎样在ActiveX中用指针传出参数,并且能够被VB、Delphi、C++ Builder等正确使用
- 在dll中增加extern "C" 是什么意思?
- Atl7.1创建的复合ActivX控件OnCreate函数无效,但是OnPaint却可以?有人知道原因么?
- 请教高手,有没有什么工具可以看到.DLL的源程序。
- 200分送了,谁有98,2000,XP下通用的内存扫描查找代码
- webbrowser中设置下拉框的问题
- 怎样实现刷新指定区域?
- 请问,这些代码是什么意思。
CRect rc;
GetClientRect(&rc);if(sz.cx < rc.Width())
{
// 没有水平滚动
}if(sz.cy < rc.Height())
{
// 没的垂直滚动
}