函式原型
函式原型:int SetScrollInfo(HWND hWnd,int fnBar,LPSCROLLINFO lpsi,BOOL fRedraw);
參數:
hWnd:滾動條控制項或帶標準滾動條的窗體句柄,由fnBar參數決定。
fnBar:指定被設定參數的滾動條的類型。這個參數可以是下面值,含義如下:
SB_CTL:設定滾動條控制項。而參數hwnd必須是滾動條控制項的句柄。
SB_HORZ:設定所給定的窗體上標準水平滾動條參數。
SB_VERT:設定所給定的窗體上標準垂直滾動條參數。
lpsi:指向SCROLLINFO結構。在調用SetScrollInfo之前,設定SCROLLINFO結構中cbSize成員以標識結構大小,設定成員fMask以說明待設定的滾動條參數,並且在適當的成員中制定新的參數值。成員fMask可以為下面所列複合值,含義如下:
SIF_DISABLENOSCROLL:如果滾動條的新參數使其為沒必要,則使滾動條無效而不再移動它。
SIF_PAGE:設定滾動頁碼值到由Ipsi指向的SCROLLINFO結構的nPage成員中。
SIF_POS:設定滾動位置值到由lpsi指向的SCROLLINFO結構的nPos成員中。
SIF_RANGE:設定滾動範圍值到由lpsl指向的SCROLLINFO結構的nMin和nMax成員中。
fRedraw:指定滾動條是否重畫以反映滾動條的變化。如果這個參數為TRUE,滾動條將被重畫,否則不被重畫。
返回值:返回值是滑塊的當前位置。
例子
cbSize = sizeof (SCROLLINFO) ;
fMask = SIF_RANGE | SIF_PAGE ;
nMin = 0 ;
nMax = NUMLINES - 1 ;
nPage = cyClient / cyChar ;
1.cbSize = sizeof (SCROLLINFO) ;
2.fMask = SIF_RANGE | SIF_PAGE ;
3.nMin = 0 ;
4.nMax = NUMLINES - 1 ;
5.nPage = cyClient / cyChar ;
SetScrollInfo (hwnd, SB_VERT, &si, TRUE) ;
——《WINDOWS程式設計》
注意
注意:SetScrolllnfo函式執行任務是檢查SCROLLINFO結構中由成員nPage和nPos值的範圍。成員nPage值必須從0到nMax- nMin+1,成員nPos必須是在nMin和nMax-max(nPage-1, 0)之間的指定值。如果任何一個值超過了這個範圍,函式將在指定範圍內為它設定一個值。
在Windows CE 2.0中,如果在參數lpsi中指定一個NULL指針,SetScrollInfo則返回0,而不返回滾動條的當前位置。
速查:Windows NT 3.51、Windows 95、Windows CE 1.0以上,頭檔案:wnuser.h;庫檔案:user32.lib。