在对话框中拖入了一个垂直滚动条,添加了相应的变量m_vScroll,m_vScroll.SetScrollRange(0, 15);设置了滚动条的范围在OnVScroll中代码如下
void CScrollDemoDlg::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
int nPosMin, nPosMax;
pScrollBar->GetScrollRange(&nPosMin, &nPosMax);
CRect rect;
int Pos = pScrollBar->GetScrollPos();
switch(nSBCode)
  {
  case SB_LINEDOWN: Pos += 2; break;
  case  SB_LINEUP: Pos -= 2; break;
  case SB_PAGEDOWN:Pos +=5;break;
  case SB_PAGEUP: Pos -= 5; break;
  case SB_THUMBPOSITION: Pos = nPos; break;
  case  SB_THUMBTRACK: Pos = nPos; break;
     
  }
  if (Pos>nPosMax)
  {
  Pos = nPosMax;
  }
  if (Pos< nPosMin)
  {
  Pos = nPosMin;
  }
  
  pScrollBar->SetScrollPos(Pos);
  
  ScrollWindow(0, -(Pos - nPos), NULL, NULL);   CDialog::OnVScroll(nSBCode, nPos, pScrollBar);
}现在的问题是:调用 ScrollWindow之后为什么滚动条控件位置也不断地在改变?有什么好的解决方案没有?