一个窗口(派生自CStatic),自己在上面控制其显示,(重载OnPaint) 
现在要为其加上滚动条,以垂直滚动条来讨论, 
  
除了在窗口Create时加上风格WS_VSCROLL以外,在我的窗口类中 
要做哪些处理以使得其达到理想得滚动效果。 
  
实在被滚动操作弄得头大了,往大侠能够指点一二,让偶能够开云见日。

解决方案 »

  1.   

    重载OnVScroll,下面给出部分代码:
    switch (nSBCode)
    {
        case SB_THUMBPOSITION:
    pScrollBar->SetScrollPos(nPos);
    break;
        case SB_LINELEFT:
    (pScrollBar->SetScrollPos)((pScrollBar->GetScrollPos())-1); break;
        case SB_LINERIGHT:
    (pScrollBar->SetScrollPos)((pScrollBar->GetScrollPos())+1); break;
        case SB_PAGELEFT:
    (pScrollBar->SetScrollPos)((pScrollBar->GetScrollPos())-15); break;
        case SB_PAGERIGHT:
    (pScrollBar->SetScrollPos)((pScrollBar->GetScrollPos())+15); break;
        case SB_THUMBTRACK:
    pScrollBar->SetScrollPos(nPos);
    break;
    }
    具体的可以查看MSDN
      

  2.   

    首先OnVScroll中传进来的参数pScrollBar为NULL
    滚动条不是控件,而是作为窗口noclient的一部分。