SetScrollInfo 的应用

函数功能

  函数功能:该函数设置滚动条参数,包括滚动位置的最大值和最小值,页面大小,滚动按钮的位置。如被请求,函数也可以重画滚动条。

编辑本段函数原型

  函数原型: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_DfSABLENOSCROLL:如果滚动条的新参数使其为没必要,则使滚动条无效而不再移动它。
  SIF_PAGE:设置滚动页码值到由Ipsi指向的SCROLLINFO结构的nPage成员中。
  SIF_POS:设置滚动位置值到由lpsi指向的SCROLLINFO结构的nPos成员中。
  SIF_RANGE:设置滚动范围值到由lpsl指向的SCROLLINFO结构的nMin和nMax成员中。
  fRedraw:指定滚动条是否重画以反映滚动条的变化。如果这个参数为TRUE,滚动条将被重画,否则不被重画。
  返回值:返回值是滑块的当前位置。

编辑本段例子

  si.cbSize = sizeof (SCROLLINFO) ;
  si.cbMask = SIF_RANGE | SIF_PAGE ;
  si.nMin = 0 ;
  si.nMax = NUMLINES - 1 ;
  si.nPage = cyClient / cyChar ;
  SetScrollInfo (hwnd, SB_VERT, &si, TRUE) ;
  ——《WINDOWS程序设计》

编辑本段注意

  注意:SetScrolllnfo函数执行任务是检查SCROLLINFO结构中由成员nPage和nPos值的范围。成员uPage值必须从0到nMax- nMin+1,成员nPos必须是在nMin和nMax-nMax-max(nPage C1,0)之间的指定值。如果任何一个值超过了这个范围,函数将在指定范围内为它设置一个值。
  在Windows CE 2.0中,如果在参数lpsi中指定一个NULL指针,Setscrohnfo则返回0,而不返回滚动盒的当前位置。
  速查:Windows NT 3.51、Windows 95、Windows CE 1.0以上,头文件:wnuser.h;库文件:user32.lib。

你可能感兴趣的:(备忘录)