界面布局如下:
首先给GroupBox添加变量,让它能够显示进度条执行到百分之多少,当出现提示:
只需要给控件ID进行重命名即可,重命名后就可以添加变量了:
给进度条添加变量:
再手动添加两个变量:
还得给上边两个编辑框关联变量:
给Button加入代码如下:
下面给窗体添加Timer消息:
每100ms触发一次Timer消息,设置Timer消息的代码如下:
void CMFCProCtrlDlg::OnTimer(UINT_PTR nIDEvent) { if (nIDEvent == 1){ //取得当前进度 int nCurPos1 = ProgressControl1.GetPos(); int nCurPos2 = ProgressControl2.GetPos(); //如果两个进度条都执行结束,就关闭计时器 if (nCurPos1 >= nEnd){ this->KillTimer(1); this->bStatus = FALSE; } //定位方式,每次进度都增加1 if (nCurPos1 < nEnd){ ProgressControl1.SetPos(nCurPos1 + 1); } //逐步方式,每次增加指定步长 if (nCurPos2 < nEnd){ ProgressControl2.StepIt(); } //第一个进度条的当前信息 this->szInfo1.Format(L"[定位方式]当前进度:%d", nCurPos1); this->szInfo2.Format(L"[逐步方式]当前进度:%d,步长:%d", nCurPos2,nStep); this->UpdateData(FALSE); } CDialogEx::OnTimer(nIDEvent); }
运行结果: