16,472
社区成员
发帖
与我相关
我的任务
分享
void CFPdfViewView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
SCROLLINFO si ;
GetScrollInfo (SB_VERT,&si,SIF_ALL);
switch(nSBCode)
{
case SB_LINEDOWN:
{
FX_INT32 pos = GetScrollPos(SB_VERT);
pos = pos + si.nMax*0.0002;
SetScrollPos(SB_VERT,pos);
Invalidate();
break;
}
case SB_LINEUP:
{
FX_INT32 pos = GetScrollPos(SB_VERT);
pos = pos - si.nMax*0.0002;
SetScrollPos(SB_VERT,pos);
Invalidate();
break;
}
case SB_THUMBTRACK:
{
//CScrollView::OnVScroll(nSBCode, nPos, pScrollBar);
break;
}
case SB_THUMBPOSITION:
{
SetScrollPos(SB_VERT,nPos);
TRACE("nPos: %d \n",nPos); //此处有问题nPos 一下为正书一下位负数无法正常移动
Invalidate();
break;
}
case SB_PAGEDOWN:
{
FX_INT32 pos = GetScrollPos(SB_VERT);
pos = pos + si.nMax*0.02;
if(pos < 0) pos = 0;
SetScrollPos(SB_VERT,pos);
Invalidate();
break;
}
case SB_PAGEUP:
{
FX_INT32 pos = GetScrollPos(SB_VERT);
pos = pos - si.nMax*0.02;
if(pos < 0) pos = 0;
SetScrollPos(SB_VERT,pos);
Invalidate();
break;
}
}
}