//.h头文件里定义进度条
CProgressCtrl m_progressCtrl;
//.cpp里DoDataExchange函数下关联进度条
void CXXXDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_PROGRESS_STATUS, m_progressCtrl);
}
//适当的地方加入时间控制,这里一秒刷新一次
SetTimer(1, 1000, 0);
//这里在过一秒都获取一次进度,并做相应的处理
void OnTimer(UINT nIDEvent)
{
if (nIDEvent == 1)
{
//ProgressPos是完成的百分比数,比如60,则进度显示到60%,函数外定义该值并在程序中刷新
m_progressCtrl.SetPos(ProgressPos);
CString percent;
if(ProgressPos <= 100)
{
//进度显示
percent.Format(_T("已转换 %d "), ProgressPos);
percent += "%...";
m_infoCtrl.SetWindowText(percent);
}
else
{
//转换完成界面处理
percent = "";
KillTimer(1);
}
}
}