字体
第(4/5)页
关灯
   存书签 书架管理 返回目录
定比例滚动框的大小,当fMask 中包含 SIF_PAGE 时有效

    int nPos;

    //滚动框的位置,当fMask 中包含SIF_POS 有效

    int nTrackPos;

    //滚动时滚动框的位置,当fMask 中包含SIF_TRACKPOS 时有效,该参数只能查询,不能设置,

    最好不要用该参数来查询拖动时滚动框的位置

    }SCROLLINFO;

    typedef SCROLLINFO FAR *LPSCROLLINFO;

    参数nMask 的意义与SCROLLINFO 结构中的fMask 相同,函数在获得有效值后返回

    TRUE,否则返回FALSE。

    6.SetScrollInfo()函数

    该成员函数声明如下:

    BOOL SetScrollInfo(LPSCROLLINFO lpScrollInfo,BOOL bRedraw = TRUE);

    该函数用于设置滚动条的各种状态,如设定页尺寸从而实现比例滚动框。参数lpScrollInfo

    指向一个SCROLLINFO 结构,参数bRedraw 表示是否需要重绘滚动条,如果为TRUE,则

    重绘之。若cāo作成功,该函数返回TRUE,否则返回FALSE。

    CWnd 类也提供了一些函数来查询和设置所属的标准滚动条。这些函数与CScrollBar 类

    的函数同名,且功能相同,但每个函数都多了一个参数,用来选择滚动条。

    7.GetScrollPos()函数

    该成员函数声明如下:

    int GetScrollPos(int nBar) const;

    参数nBar 用来选择滚动条,可以为下列值。

    ? SB_HORZ:指定水平滚动条。

    ? SB_VERT:指定垂直滚动条。

    枫叶文学网www.fywxw.com

    第5 章 常用控件

    ·111·

    8.OnHScroll()和OnVScroll()函数

    无论是标准滚动条,还是滚动条控件,滚动条的通知消息都是用WM_HSCROLL 和

    WM_VSCROLL 消息发送出去的。对这两个消息的默认处理函数是CWnd::OnHScroll 和

    CWnd::OnVScroll,一般需要在派生类中对这两个函数从新设计,以实现滚动功能。这两个函

    数的声明如下:

    afx_msg void OnHScroll(UINT nSBCode,UINT nPos,CScrollBar* pScrollBar);

    afx_msg void OnVScroll(UINT nSBCode,UINT nPos,CScrollBar* pScrollBar);

    参数nSBCode 是通知消息码,主要通知码如表5-7 所示。nPos 是滚动框的位置,只有在

    nSBCode 为SB_THUMBPOSITION 或SB_THUMBTRACK 时,该参数才有意义。如果通知

    消息是滚动条控件发来的,那么pScrollBar 是指向该控件的指针,如果是标准滚动条发来的,

    则pScrollBar 为NULL。

 
上一页 目录 下一页