CProgressCtrl 类常用成员函数
SetRange | void SetRange( short nLower, short nUpper ); 为进度条控件设置范围的最小值和最大值,并重画进度条来反映新的范围,默认为0~100,若设置32位范围,用下面的函数。 -0x8fff~0x7FFF |
SetRange32 | void SetRange32( int nLower , int nUpper ); 为进度条控件设置范围的最小值和最大值,并重画进度条来反映新的范围 |
GetRange | void GetRange( int&nLower, int&nUpper ); 获取进度条控件范围的下限 和上限 |
GetPos | 获取进度条的当前位置 |
SetPos | 设置进度条的当前位置,并重画进度条来反映新的位置 |
OffsetPos | 在原位置上增加一段数值,并重画进度条来反映新的位置 |
SetStep | 设置进度条前进的步长,返回原来步长。配合StepIt使用 在进度条上会以百分比的形式显示出来 步长/(最大值-最小值) |
- void CMFCControlTestDlg::OnBnClickedBtPro()
- {
- // TODO: 在此添加控件通知处理程序代码
- m_progressCtrl.SetRange32(0, 1000);//设置进度条的最小值和最大值
- int nFirstStep = m_progressCtrl.SetStep(10);//设置步长,返回原来步长,默认是最大值的1%
-
- for (int x=1; x<=10; x++)
- {
- m_progressCtrl.SetPos(x*10);//设置一个位置
- int a = m_progressCtrl.StepIt();//在原位置上增加一个步长距离,配合SetStep使用,先设置步长才能使用这个
- Sleep(100);
- }
- m_progressCtrl.OffsetPos(400);//在原位置上增加400距离
- if (m_progressCtrl.GetPos() > 1000)//获取当前位置
- {
- m_progressCtrl.SetPos(0);
- }
- }