VS2010——MFC編寫執行緒的進度條
一. 開啟VS2010程式,建立MFC工程;其中控制元件新增變數步驟:
1.介面右擊滑鼠,選擇Class Wizard
2.單擊Member Variables選單專案
3.選擇對應的控制元件,再單擊右邊的Add Variable
4.自己命名填寫確認即可
二. 建立執行緒編碼:
1.在WANGDUANDlg.h檔案中class下第一個public:
HANDLE m_hPro;
static DWORD WINAPI GetProgress(void *p);
2.在WANGDUANDlg.c檔案中建立執行緒:
m_hPro = CreateThread(0,0,GetProgress,this,0,0);
3.在WANGDUANDlg.c檔案中結束執行緒:
//TerminateThread(m_hPro,0); 此行不可以緊跟建立執行緒,僅說明慎重放到合適位置。
建議執行緒採用全域性變數,通過布林型別釋放執行緒
三. 進度條處理方法:
1. 在介面拖動新增Progress Control控制元件
2. MFC程式上新增變數CProgressCtrl m_Progress
3. 在函式DWORD WINAPI WANGDUANDlg::GetProgress(void *p)新增以下程式碼
WANGDUAN *pWANGDUAN = (WANGDUAN *)p
CProgressCtrl *pProgress = &(pWANGDUAN->m_Progress);
重:此處是可以指向整個程式介面的控制元件或全域性變數
4. 進度條的範圍:pProgress->SetRange(0,100);
5. 進度條的位置:pProgress->SetPos(int iPos);