我的程序基于CScrollView,在用鼠标中轮滚动时,滚动条是可以滚动到最下面的,我在view中绘的图形也显示正常,但如果我用鼠标拖动滚动条向下,拖动到偏中下的位置时,图形显示就突然显示为最上方的图形,松开鼠标,滚动条也立即回到最上方,这个问题可能出在哪?有没有哪位大侠遇到过这种问题

解决方案 »

  1.   

    恩,没有,只在OnInitialUpdate和OnUpdate中设置了SetScrollSizes(MM_TEXT, sizeTotal, sizePage, sizeLine);需要处理这个消息,进行绘图设置吗?
      

  2.   

    问题找到了,http://blog.csdn.net/khler/article/details/1635762,这个作者说的很对,不过采用他的方法,拖动到下部时是先显示一下最上端的图形,再显示当前滚动位置的图形,因此图形闪的很厉害,效果不理想
      

  3.   

    解决了,重载OnScroll函数,加一下几行代码 SCROLLINFO   ScrollInfo; 
    GetScrollInfo(SB_VERT,   &ScrollInfo,   SIF_TRACKPOS); 
    nPos   =   ScrollInfo.nTrackPos;