第一个基于ATL窗口的程序
1.首先创建一个基于Win32的程序,然后按照如下步骤进行
2. 手工添加ATL支持:在StdAfx.h里面添加如下头文件包含
#include<atlbase.h>
extern CComModule _Module;
#include <atlcom.h>
#include<atlwin.h>
在程序主文件下添加如下语句
CComModule _Module;
BEGIN_OBJECT_MAP(ObjectMap)
END_OBJECT_MAP()
3. 用ClassWizard建立一个ATL窗口CMyWindow(普通类),派生自CWindowImpl<CMyWindow>
注意:每个类的定义部分都必须要添加以下消息映射表,否则这个类将会是抽象类
BEGIN_MSG_MAP(CViewWin)
END_MSG_MAP()
4. 在属性窗口中添加消息处理
5. 修改WinMain函数
int APIENTRY _tWinMain(HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPTSTR lpCmdLine,
int nCmdShow)
{
// TODO: 在此放置代码。
_Module.Init(NULL, hInstance);
CMyWindow wnd;
wnd.Create(NULL, CWindow::rcDefault, _T("Hello"),
WS_OVERLAPPEDWINDOW|WS_VISIBLE);
MSG msg;
while(GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
第一个基于ATL框架-视图应用程序