1. 程式人生 > >VS2010——MFC編寫執行緒的進度條

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);