创建一个不显示实际进度的循环滚动进度条,类似于Windows XP启动界面的进度条 新建一个MFC项目TestProgress,编辑界面,添加一个进度条,两个按钮,实现点击start进度条循环滚动,点击stop进度条消失  右键进度条,属性,将Marquee设置为true  右击进度条,添加变量。设置变量名字m_progress  在CTestProgressDlg::OnInitDialog中添加以下语句
// TODO : 在此添加额外的初始化代码
m_progress.SetMarquee(true,30);
右键单击start按钮,添加事件处理程序,选择消息类型BN_CLICKED,点击添加编辑  之后在CTestProgressDlg::OnBnClickedButton1中编辑以下代码
void CTestProgressDlg::OnBnClickedButton1(){
m_progress.ShowWindow(true);
}
同样的方法为stop按钮添加事件处理
void CTestProgressDlg::OnBnClickedButton2(){
m_progress.ShowWindow(false);
}
效果:  对于进度条,我使用以下方法让进度条恢复循环滚动
m_progress.ModifyStyle(NULL,WS_VISIBLE);
而使用以下方法会让进度条暂停滚动
m_progress.ModifyStyle(WS_VISIBLE,NULL);
我在vs2005中没有找到进度条的Marquee属性,因此使用的是vs2010写的程序 Windows XP以前看起来外观还不错,但是用了Windows 10很久时间后现在看起来很丑陋 这是XP的我的电脑  而这是Windows 10的我的电脑 
|