资源预览内容
第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
亲,该文档总共3页全部预览完了,如果喜欢就下载吧!
资源描述
VC对话框自带滚动条的使用一, 使用对话框窗口自带的滚动条,在属性页面中设置即可,如下二, OnInitDialog()函数中,添加如下滚动条初始化语句SCROLLINFO vinfo;vinfo.cbSize =sizeof(vinfo);vinfo.fMask =SIF_ALL;vinfo.nPage =50;/滚动块自身的长短,通常有如下关系:其长度/滚动条长度(含两个箭头)=nPage/(nMax+2), /另外nPage取值-1时,滚动条会不见了。vinfo.nMax =600;/滚动条所能滚动的最大值vinfo.nMin=0;/滚动条所能滚动的最小值vinfo.nTrackPos =0;SetScrollInfo(SB_VERT,&vinfo);/即使上述步骤一不做,使用此条语句也可以显示滚动条三, 添加相应的WM_VSCROLL函数void CMy1d0Dlg:OnVScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar) / TODO: Add your message handler code here and/or call defaultSCROLLINFO scrollinfo;GetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); switch (nSBCode) case SB_BOTTOM: /滑块滚动到最底部ScrollWindow(0,(scrollinfo.nPos-scrollinfo.nMax)*10); /滚动屏幕scrollinfo.nPos = scrollinfo.nMax; /设定滑块新位置SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); /更新滑块位置break; case SB_TOP: /滑块滚动到最顶部ScrollWindow(0,(scrollinfo.nPos-scrollinfo.nMin)*10); scrollinfo.nPos = scrollinfo.nMin; SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); break; case SB_LINEUP: /单击上箭头scrollinfo.nPos -= 1; if (scrollinfo.nPosscrollinfo.nMax) scrollinfo.nPos = scrollinfo.nMax; break; SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); ScrollWindow(0,-10); break; case SB_PAGEUP: /单击滑块上方空白区域scrollinfo.nPos -= 5; if (scrollinfo.nPosscrollinfo.nMax) scrollinfo.nPos = scrollinfo.nMax; break; SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); ScrollWindow(0,-10*5); break; case SB_ENDSCROLL: /鼠标离开滑块,结束滑块拖动/ MessageBox(SB_ENDSCROLL); break; case SB_THUMBPOSITION: / ScrollWindow(0,(scrollinfo.nPos-nPos)*10); / scrollinfo.nPos = nPos; / SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); break; case SB_THUMBTRACK: /拖动滑块ScrollWindow(0,(scrollinfo.nPos-nPos)*10); scrollinfo.nPos = nPos; SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL); break; CDialog:OnVScroll(nSBCode, nPos, pScrollBar);
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号