滚动条控件通常用于一些类似于对话框之类的容器控件中,当父窗口显示不下子窗口中的内容时,可以通过滚动条控件使子窗口内容在父窗口中滚动,以扩展父窗口的显示范围;
2.4.1 技术要点:
- 当一个窗口上的滚动条发生滚动事件时,垂直方向的滚动条会向父窗口发送“WM_VSCROLL”消息,水平方向的滚动条控件会向父窗口发送“WM_HSCROLL”消息;
- 要控制滚动条,可以向其发送Windows中预先定义的消息,这些消息都以“SBM_ ”开头。例如“SBM_GETPOS”消息用于获取指定滚动条的滑块当前位置;
- 在 MFC 中,滚动条控件的封装类为 CScrollBar 。该类通过对上述消息的封装,将常用消息封装为方法,通过调用该类的相关方法,即可方便地控制控件;
…
2.4.2 实例步骤:
本实例通过一个显示滚动条当前位置的程序,演示滚动条的基本方法,实例步骤如下:
- 新建一个基于对话框的 MFC 应用程序,项目名称为“ScrollBarDemo”;
- 在主对话框上添加一个水平滚动条控件,将控件的ID修改为“IDC_SCROLL”,并通过类向导,在主对话框类中为控件添加一个控件型变量,变量名称为“m_scroll”;