鼠标松开的时候加上SetScrollPos
解决方案 »
- 怎样学习windows API
- 如何在一个MFC项目中启动另一个非MFC项目?急啊!!
- 请问如何判断是否已经注册了ODBC数据源
- 为何我的Release版MFC程序会和mfc42d.dll和msvcrtd.dll?祥见正文
- 如何设置目录的隐藏属性
- 菜鸟刚开始学写DLL,初级问题
- xml 问题(在线等候,立即给分)
- ReadProcessMemory问题,有用过这个函数的人请给我一些意见,高分
- Project Setting中的Debug->Additional Dlls有什么用??
- 在VC++中如何编程自动建立拨号连接?
- mschart数据输入问题,在线等!急
- **********************请教关于ADO的问题,高手救命啊~********************
1、 建立工程时,将 View 类继承自 CScrollView
2、 在 OnInitialUpdate 中添加初始化时 Scroll 的相关属性值
CSize sizeTotal(0,0);
SetScrollSizes(MM_TEXT,sizeTotal);
3、 打开文件 ( 图像后 ) 根据图像的大小,设置滚动属性值
ChangeScrollRange(); // 自定义函数
4、 在 View 类中添加成员变量。
作用是存储图像显示位置与原点的 offset
int m_ImgVScrollPos ; // VScroll distance
int m_ImgHScrollPos ; // HScroll distance
5、 滚动处理
添加自定义响应 WM_VSCROLL 、 WM_HSCROLL 消息的事件函数: OnVScroll 、 OnHScroll
void CSockIIView :: OnVScroll ( UINT nSBCode , UINT nPos , CScrollBar * pScrollBar )
{
// TODO: Add your message handler code here and/or call default
SCROLLINFO si ;
GetScrollInfo ( SB_VERT ,& si , SIF_ALL );
m_ImgVScrollPos = si . nPos ;
Invalidate ( TRUE );
CScrollView :: OnVScroll ( nSBCode , nPos , pScrollBar ); }