www.pudn.com > 2DCAD_duojiemian.rar > UIThread.cpp


// UIThread.cpp : implementation file 
// 
 
#include "stdafx.h" 
#include "2DCAD.h" 
#include "UIThread.h" 
//#include "MainFrm.h" 
 
#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 
 
///////////////////////////////////////////////////////////////////////////// 
// CUIThread 
 
IMPLEMENT_DYNCREATE(CUIThread, CWinThread) 
 
CUIThread::CUIThread() 
{ 
} 
 
CUIThread::~CUIThread() 
{ 
} 
 
BOOL CUIThread::InitInstance()		//产生用户界面线程的用户界面 
{ 
	// TODO:  perform and per-thread initialization here 
 
	//在InitInstance中分配内存空间,产生窗口类对象 
	CFrameWnd *pFrameWnd=new CFrameWnd();//动态分配内存空间 
	m_pMainWnd=pFrameWnd;		//保存指针到CUIThread的m_pMainWnd成员中,在线程正常退出时会自动释放内存空间 
 
//	pFrameWnd->Create(NULL,"用户界面线程"); 
	pFrameWnd->LoadFrame(IDR_MAINFRAME); 
	pFrameWnd->ShowWindow(SW_SHOW); 
	pFrameWnd->UpdateWindow(); 
 
 
	return TRUE; 
} 
 
int CUIThread::ExitInstance() 
{ 
	// TODO:  perform any per-thread cleanup here 
	return CWinThread::ExitInstance(); 
} 
 
BEGIN_MESSAGE_MAP(CUIThread, CWinThread) 
	//{{AFX_MSG_MAP(CUIThread) 
		// NOTE - the ClassWizard will add and remove mapping macros here. 
	//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 
 
///////////////////////////////////////////////////////////////////////////// 
// CUIThread message handlers