MFC UI執行緒

iteye_9395發表於2011-11-23

1、建立一個MFC應用程式。

2、向程式中新增一個以CWinThread為基類的新類CMyThread,該類用於啟動一個使用者介面執行緒。

3、向程式中新增一個對話方塊,並建立相應的對話方塊類CThreadDlg,該對話方塊將被作為使用者介面執行緒的主視窗。

4、在MyThread.cpp中加入#include "ThreadDlg.h",並在CMyThread::InitInstance()中加入
  CThreadDlg dlg;
  m_pMainWnd=&dlg;
  dlg.DoModal();
  確保InitInstance函式最後return TRUE

5、CMyThread::InitInstance()中建立的CThreadDlg將與主視窗在獨立的執行緒中執行,可以在CThreadDlg中加入各種執行耗時任務的程式碼而不會影響主視窗的執行。

6、在主視窗的View類中加入#include "MyThread.h",並使用AfxBeginThread(RUNTIME_CLASS(CMyThread));開啟執行緒。

相關文章