本篇文章由:http://www.sollyu.com/using-the-c11-secure-online-process-control-ui/
说明
首先这里使用的是 Visual Studio 2015
, 主要是它支持的C++11更好,其它的我就没有去研究了,想必 Visual Stuido 2010
也差不多吧。
步奏
-
创建一个MFC对话框工程
-
绘画界面如下图
-
添加变量
-
添加事件代码
代码
添加头文件#include <thread>
, 在按钮事件
中添加代码
void CMFCApplication1Dlg::OnBnClickedButtonStart() { m_wndProgress.SetRange( 0, 99 ); m_wndProgress.SetStep( 1 ); m_wndProgress.SetPos( 0 ); /* 创建一个线程 */ std::thread t( [=] { for ( size_t i = 0; i < 100; i++ ) { m_wndProgress.SetPos( i ); /* 为了更好体验在线程 */ Sleep( 10 ); } /* 在UI线程中显示对话框 */ MessageBox( _T( "完成\n http://www.sollyu.com \n 欢迎光临" ), _T( "提示" ), MB_ICONINFORMATION ); } ); /* 将子线程从主线程里分离,子线程执行完成后会自己释放掉资源 */ t.detach(); }