解决方案 »

  1.   

    OnVScroll中别忘了
    SetScrollPos(SB_VERT, curpos); //设置滚动条位置
      

  2.   

    void XX::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
    {
    if(pScrollBar == &m_ScrollPole)
    {
    SCROLLINFO siv;
    pScrollBar->GetScrollInfo(&siv);
    int pos = siv.nPos ;
    switch (nSBCode)
    {
    case SB_TOP:
    siv.nPos = siv.nMin;
    break ;
    case SB_BOTTOM:
    siv.nPos = siv.nMax;
    break ;
    case SB_LINEUP:
    siv.nPos -= 1;
    break ;
    case SB_LINEDOWN:
    siv.nPos += 1;
    break ;
    case SB_PAGEUP:
    siv.nPos -= siv.nPage;
    break ;
    case SB_PAGEDOWN:
    siv.nPos += siv.nPage;
    break ;
    case SB_THUMBTRACK:
    siv.nPos = siv.nTrackPos;
    break;
    default:
    break;         
    }
    siv.fMask = SIF_POS ;
    pScrollBar->SetScrollInfo(&siv,TRUE);
    pScrollBar->GetScrollInfo(&siv);
    }
    CDialog::OnHScroll(nSBCode, nPos, pScrollBar);
    }