15,979
社区成员
发帖
与我相关
我的任务
分享
void CPicShowView::OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
//// TODO: 在此添加消息处理程序代码和/或调用默认值
CSize sizePage;
CSize sizeLine;
CSize sizeTotal;
int mapMode;
GetDeviceScrollSizes(mapMode, sizeTotal, sizePage, sizeLine);
int iPageStep = sizePage.cy;
int iLineStep = sizeLine.cy;
int iCtrlDist = (m_sDecriFormat.iCtrlDist + 90); //iCtrlDist 为显示图像的控件之间的距离
CPoint ScrollPosition;
ScrollPosition = GetScrollPosition(); // 获取滚动条坐标
int iCurRow = (ScrollPosition.y + iPageStep) / (iCtrlDist);
SCROLLINFO scrollinfo;
GetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);
//滚动条坐标输出
//m_iScroYLoc = ScrollPosition.y;
//OutputDebugPrintf("scrollTime: m_iScroPositon = %d", m_iScroYLoc);
switch(nSBCode)
{
case SB_TOP:
break;
case SB_LINEUP :
UpScrollLine(ScrollPosition.y - iLineStep, iCtrlDist);
break;
case SB_LINEDOWN:
DownScrollLine(ScrollPosition.y + iLineStep, iCtrlDist);
break;
case SB_PAGEUP:
ScrollSBPageUp(ScrollPosition.y - iPageStep, iCtrlDist);
break;
case SB_PAGEDOWN:
ScrollSBPageDown(ScrollPosition.y + iPageStep, iCtrlDist);
break;
case SB_THUMBTRACK:
ScrollSBThumbTrack(scrollinfo.nTrackPos, iCtrlDist);
break;
case SB_THUMBPOSITION:
break;
}
Invalidate(FALSE);
CScrollView::OnVScroll(nSBCode, nPos, pScrollBar);
}