我在一个定时器中调用垂直滚动条的处理程序 OnVScroll( nSBCode,  nPos, NULL);
让滚动条随时间滚动,在对话框中显示绘制的图形。当一段绘制完成后我想让滚动条回到起始点继续按照定时滚动,请问我该如何实现。
我在第一段画图结束的时候调用setScrollpos(SB_VERT,0);使滚动条回到了起始位置,但是当下一次滚动的时候 滚动条又接着从上一段绘图结束的位置开始滚动。

解决方案 »

  1.   

    SCROLLINFO VScrollinfo = {sizeof(SCROLLINFO)};
    VScrollinfo.fMask = SIF_POS;
    VScrollinfo.nPos = 0;
    SetScrollInfo(SB_VERT, &VScrollinfo);这样呢
      

  2.   

    定时器中调用垂直滚动条的处理程序 OnVScroll( nSBCode,  nPos, NULL);,主要是这里你是怎么弄的,你可以在这定时器中用我那段函数
      

  3.   

    if(nIDEvent==1)
    {
    WPARAM wParam=MAKEWPARAM(SB_LINEDOWN,0);
    UINT nSBCode = LOWORD(wParam);  
    UINT nPos = HIWORD(wParam);
    OnVScroll( nSBCode,  nPos, NULL);
    }
    这是我在定时器程序中实现自动滚动的代码 是不是跟这个有关
      

  4.   

    “调用setScrollpos(SB_VERT,0);使滚动条回到了起始位置”
    窗口并没有 回到 原来 位置 要 ScrollWindow 回去。