1.创建win32环境空项目
2.设为启动项目
3.修改字符集
4.
5.添加新建项
6.代码
#include <afxwin.h> //相当于windows.h+afx.h
//2.框架窗口类
class CMyFrameWnd :public CFrameWnd {};
//CFrameWnd是单文档框架窗口类
// 1.应用程序类
class CMyWinApp :public CWinApp
{
public:
virtual BOOL InitInstance(); //启动函数
};
CMyWinApp theAPP;
BOOL CMyWinApp::InitInstance()
{
CMyFrameWnd* pFrame = new CMyFrameWnd; //先new窗口空间
pFrame->Create(NULL,"MFCBase"); //创建窗口
//参数1:lpszClassName窗口类名.
// 类名称可以是向 AfxRegisterWndClass 全局函数或 RegisterClass Windows 函数注册的任何名称。 如果是 NULL,请使用预定义的默认 CFrameWnd 特性
//参数2:标题栏的文本
//参数3:窗口样式。 如果希望标题栏自动显示窗口中表示的文档的名称,请包含 FWS_ADDTOTITLE 样式
//参数4:RECT 指定窗口的大小和位置。 rectDefault 值允许 Windows 指定新窗口的大小和位置
//参数5:窗口的父窗口。 对于顶级框架窗口,此参数应该为 NULL
//参数6:菜单资源的名称。 如果菜单具有整数 ID 而不是字符串,请使用 MAKEINTRESOURCE。 此参数可以为 NULL
//参数7:窗口扩展样式
//参数8:指向 CCreateContext 结构的指针。 此参数可以为 NULL
//返回值:如果初始化成功,则为非零值;否则为 0
m_pMainWnd = pFrame;
//该成员变量存储线程主窗口对象。当和m_pMainWnd相关的窗口被关闭后,MFC会自动终止线程。如果该线程是应用程序主线程,程序也将会被终止。如果该数据成员为NULL,应用程序CWinApp对象的主窗口将用来决定什么时候去终止线程。m_pMainWnd是一个CWnd*类型的public变量
//很明显,需要在重载InitInstance时为m_pMainWnd赋值。在工作线程中,m_pMainWnd自动继承其父线程的值
m_pMainWnd->ShowWindow(SW_SHOW); //显示窗口
m_pMainWnd->UpdateWindow(); //更新窗口a
return TRUE;
}