iHorzpos为滚动前的原来的点,si.npos应该是滚动时的点吧。
if (si.nPos != iHorzPos)
{
ScrollWindow ( hwnd, cxChar * (iHorzPos - si.nPos), 0, 
        NULL, NULL) ;
UpdateWindow(hwnd);
}如果我现在把滚动条向下滚动的话,scrollwindow函数的第二个参数中的iHorzPos - si.nPos不是有可能是负数吗?
还有一个问题,iPaintBeg = max (0, iVertPos + ps.rcPaint.top / cyChar) ;
iPaintEnd = min (NUMLINES - 1,iVertPos + ps.rcPaint.bottom /cyChar) ;
iVertPos + ps.rcPaint.top / cyChar,iVertPos + ps.rcPaint.bottom /cyChar这两个点是在哪里?? 其中的ps.rcpaint.top是什么意思?