資源簡介
本程序使用TAB控件生成了3個Dialog,每個dialog上都有一個簡單的MFC多線程實例,簡單易懂,且有注釋,是MFC多線程學習的好幫手,多線程傳參數:傳遞窗口句柄等等

代碼片段和文件信息
//?Dialog1.cpp?:?implementation?file
//
#include?“stdafx.h“
#include?“MultiThread11.h“
#include?“Dialog1.h“
extern?m_flag;
#ifdef?_DEBUG
#define?new?DEBUG_NEW
#undef?THIS_FILE
static?char?THIS_FILE[]?=?__FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
//?CDialog1?dialog
BOOL?m_flag?=?TRUE;
CDialog1::CDialog1(CWnd*?pParent?/*=NULL*/)
:?CDialog(CDialog1::IDD?pParent)
{
//{{AFX_DATA_INIT(CDialog1)
//}}AFX_DATA_INIT
}
void?CDialog1::DoDataExchange(CDataExchange*?pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDialog1)
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDialog1?CDialog)
//{{AFX_MSG_MAP(CDialog1)
ON_BN_CLICKED(IDC_BUTTON1?OnButton1)
ON_BN_CLICKED(IDC_BUTTON2?OnButton2)
ON_BN_CLICKED(IDC_BUTTON3?OnButton3)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
//?CDialog1?message?handlers
void??ThreadFunc(LPVOID?pParam)
{
CString?strTime;
CDialog1?*dlg;
dlg?=?(CDialog1?*)pParam;
CTime?time;
m_flag?=?TRUE;
while(m_flag)
{
time?=?CTime::GetCurrentTime();
strTime=time.Format(“%H:%M:%S“);
::SetDlgItemText(dlg->m_hWndIDC_EDIT1strTime);
// GetDlgItem(IDC_EDIT1)->setwindow
Sleep(1000);
}
ExitThread(1);
}
void?CDialog1::OnButton1()?//啟動線程//傳遞的參數?是?窗口對象指針
{
//?TODO:?Add?your?control?notification?handler?code?here
hThread=CreateThread(NULL
0
(LPTHREAD_START_ROUTINE)ThreadFunc
this
0
&ThreadID);
GetDlgItem(IDC_BUTTON1)->EnableWindow(FALSE);
GetDlgItem(IDC_BUTTON2)->EnableWindow(TRUE);
}
void?CDialog1::OnButton2()?
{
//?TODO:?Add?your?control?notification?handler?code?here
m_flag?=?false;
GetDlgItem(IDC_BUTTON1)->EnableWindow(true);
GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE);
}
void?CDialog1::OnButton3()?
{
//?TODO:?Add?your?control?notification?handler?code?here
TerminateThread(hThread1);
GetDlgItem(IDC_BUTTON1)->EnableWindow(true);
GetDlgItem(IDC_BUTTON2)->EnableWindow(FALSE);
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????5561??2014-06-29?20:00??MultiThread11\Debug\APPMODUL.obj
?????文件??????15547??2014-06-29?20:04??MultiThread11\Debug\Dialog1.obj
?????文件??????19832??2014-06-30?10:25??MultiThread11\Debug\Dialog2.obj
?????文件??????12453??2014-06-30?11:04??MultiThread11\Debug\Dialog3.obj
?????文件?????114772??2014-06-30?11:04??MultiThread11\Debug\MultiThread11.exe
?????文件?????244912??2014-06-30?11:04??MultiThread11\Debug\MultiThread11.ilk
?????文件??????17320??2014-06-30?11:01??MultiThread11\Debug\MultiThread11.obj
?????文件????5498340??2014-06-29?20:00??MultiThread11\Debug\MultiThread11.pch
?????文件?????418816??2014-06-30?11:04??MultiThread11\Debug\MultiThread11.pdb
?????文件???????3272??2014-06-30?11:00??MultiThread11\Debug\MultiThread11.res
?????文件??????31025??2014-06-30?11:01??MultiThread11\Debug\MultiThread11Dlg.obj
?????文件?????106090??2014-06-29?20:00??MultiThread11\Debug\StdAfx.obj
?????文件?????222208??2014-06-30?15:01??MultiThread11\Debug\vc60.idb
?????文件?????372736??2014-06-30?11:04??MultiThread11\Debug\vc60.pdb
?????文件???????2091??2014-06-30?15:01??MultiThread11\Dialog1.cpp
?????文件???????1260??2014-06-29?20:01??MultiThread11\Dialog1.h
?????文件???????3033??2014-06-30?10:25??MultiThread11\Dialog2.cpp
?????文件???????1260??2014-06-29?20:06??MultiThread11\Dialog2.h
?????文件???????1521??2014-06-30?11:04??MultiThread11\Dialog3.cpp
?????文件???????1235??2014-06-30?10:59??MultiThread11\Dialog3.h
?????文件??????36980??2014-06-30?11:00??MultiThread11\MultiThread11.aps
?????文件???????2374??2014-06-30?15:01??MultiThread11\MultiThread11.clw
?????文件???????2161??2014-06-27?21:12??MultiThread11\MultiThread11.cpp
?????文件???????4791??2014-06-30?15:01??MultiThread11\MultiThread11.dsp
?????文件????????551??2014-06-27?21:12??MultiThread11\MultiThread11.dsw
?????文件???????1401??2014-06-27?21:12??MultiThread11\MultiThread11.h
?????文件??????58368??2014-06-30?15:01??MultiThread11\MultiThread11.ncb
?????文件??????52736??2014-06-30?15:01??MultiThread11\MultiThread11.opt
?????文件????????820??2014-06-30?11:04??MultiThread11\MultiThread11.plg
?????文件???????6828??2014-06-30?11:00??MultiThread11\MultiThread11.rc
............此處省略14個文件信息
評論
共有 條評論