滚动条控件
一:实验内容
编写一个基于对话框的模拟进度程序,要求添加相关控件实现如下功能:单击开始,进度条开始填充,最后填充的百分比为滑动条定位的位置,并且显示最后进度的百分比。运行结果如下所示:
二:实验步骤
1、工程建立
新建一个工程,环境有问题的请参考visual2017专业版MFC编程环境搭建及第一个MFC程序的创建
2、控件的添加
在资源文件——prograss.rc
中打开Dialog,双击IDD_PROGRASS_DIALOG可以看到对话框
删除掉对话框上原有的控件,添加一个静态文本(STATIC),一个编辑框(EDIT)、一个命令按钮(BUTTON)、一个进度条(PROGRESS)和一个滑动条(SLIDER)控件,布局如下
3、修改控件属性
鼠标选中控件,在属性对话框中设置其属性,如下表所示
修改完成后界面如图所示:
4、添加控件成员变量
鼠标右键要设置的成员变量的控件,单击添加变量命令,打开添加变量向导对话框,设置其成员变量如下表所示,详情请参考控件——静态空间、编辑框控件、命令按钮、复选框和单选控件
5、编写程序代码
在progressDlg.cpp文件下的消息队列初始化函数BOOL CprograssDlg::OnInitDialog()中添加如下代码
// TODO: 在此添加额外的初始化代码 m_p.SetRange(0, 100); m_slider.SetRange(0, 100);
双击按钮,在void CprograssDlg::OnBnClickedButton1()中填入如下代码:
void CprograssDlg::OnBnClickedButton1() { // TODO: 在此添加控件通知处理程序代码 for (int i = 0; i <= m_slider.GetPos(); i++) { m_p.SetPos(i); m_edit = i; UpdateData(FALSE); Sleep(50);//休眠50ms便于观察 } }
编译后运行结果如下: