VC 对话框自带滚动条的使用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
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 default SCROLLINFO 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.nMin) { scrollinfo.nPos = scrollinfo.nMin; break; } SetScrollInfo(SB_VERT,scrollinfo,SIF_ALL); ScrollWindow(0,10); break; case SB_LINEDOWN: //单击下箭头 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.nMin) { scrollinfo.nPos = scrollinfo.nMin; break; } SetScrollInfo(SB_VERT,scrollinfo,SIF_ALL); ScrollWindow(0,10*5); break; case SB_PAGEDOWN: //单击滑块下方空白区域 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); // s

文档评论(0)

勤能补拙 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档