資源描述:
《VC 對話框自帶滾動條的使用.doc》由會員上傳分享,免費在線閱讀,更多相關內容在教育資源-天天文庫。
1、VC對話框自帶滾動條的使用一,使用對話框窗口自帶的滾動條,在屬性頁面中設置即可,如下二,OnInitDialog()函數中,添加如下滾動條初始化語句SCROLLINFOvinfo;vinfo.cbSize=sizeof(vinfo);vinfo.fMask=SIF_ALL;vinfo.nPage=50;//滾動塊自身的長短,通常有如下關系:其長度/滾動條長度(含兩個箭頭)=nPage/(nMax+2),//另外nPage取值-1時,滾動條會不見了。vinfo.nMax=600;//滾動條所能滾動的最大值vinfo.nMin=0;//滾動條所
2、能滾動的最小值vinfo.nTrackPos=0;SetScrollInfo(SB_VERT,&vinfo);//即使上述步驟一不做,使用此條語句也可以顯示滾動條三,添加相應的WM_VSCROLL函數voidCMy1d0Dlg::OnVScroll(UINTnSBCode,UINTnPos,CScrollBar*pScrollBar){//TODO:Addyourmessagehandlercodehereand/orcalldefaultSCROLLINFOscrollinfo;GetScrollInfo(SB_VERT,&scrolli
3、nfo,SIF_ALL);switch(nSBCode){caseSB_BOTTOM://滑塊滾動到最底部ScrollWindow(0,(scrollinfo.nPos-scrollinfo.nMax)*10);//滾動屏幕scrollinfo.nPos=scrollinfo.nMax;//設定滑塊新位置SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);//更新滑塊位置break;caseSB_TOP://滑塊滾動到最頂部ScrollWindow(0,(scrollinfo.nPos-scrollinfo
4、.nMin)*10);scrollinfo.nPos=scrollinfo.nMin;SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);break;caseSB_LINEUP://單擊上箭頭scrollinfo.nPos-=1;if(scrollinfo.nPos5、k;caseSB_LINEDOWN://單擊下箭頭scrollinfo.nPos+=1;if(scrollinfo.nPos>scrollinfo.nMax){scrollinfo.nPos=scrollinfo.nMax;break;}SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);ScrollWindow(0,-10);break;caseSB_PAGEUP://單擊滑塊上方空白區(qū)域scrollinfo.nPos-=5;if(scrollinfo.nPos6、llinfo.nPos=scrollinfo.nMin;break;}SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);ScrollWindow(0,10*5);break;caseSB_PAGEDOWN://單擊滑塊下方空白區(qū)域scrollinfo.nPos+=5;if(scrollinfo.nPos>scrollinfo.nMax){scrollinfo.nPos=scrollinfo.nMax;break;}SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);Scr
7、ollWindow(0,-10*5);break;caseSB_ENDSCROLL://鼠標離開滑塊,結束滑塊拖動//MessageBox("SB_ENDSCROLL");break;caseSB_THUMBPOSITION://ScrollWindow(0,(scrollinfo.nPos-nPos)*10);//scrollinfo.nPos=nPos;//SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);break;caseSB_THUMBTRACK://拖動滑塊ScrollWindow(0,(sc
8、rollinfo.nPos-nPos)*10);scrollinfo.nPos=nPos;SetScrollInfo(SB_VERT,&scrollinfo,SIF_ALL);b