#include <afxwin.h>
//消息映射的方式处理消息(不重写WindowProc)
class CMyFrameWnd:public CFrameWnd{
DECLARE_MESSAGE_MAP()
public:
LRESULT OnCreate(WPARAM wParam,LPARAM lParam);
LRESULT OnPaint(WPARAM wParam,LPARAM lParam);
};
//消息映射
BEGIN_MESSAGE_MAP(CMyFrameWnd,CFrameWnd)
ON_MESSAGE(WM_CREATE,OnCreate)
ON_MESSAGE(WM_PAINT,OnPaint)
END_MESSAGE_MAP()
//WM_CREATE消息对应的消息处理函数
LRESULT CMyFrameWnd::OnCreate(WPARAM wParam,LPARAM lParam)
{
AfxMessageBox("hello hello ");
return 0;
}
//WM_PAINT消息对应的消息处理函数
LRESULT CMyFrameWnd::OnPaint(WPARAM wParam,LPARAM lParam)
{
PAINTSTRUCT ps={0};
HDC hdc = ::BeginPaint(this->m_hWnd,&ps);
char *p=NULL;
p="what a pity. :-< ";
::TextOut(hdc,200,200,p,strlen(p));
::EndPaint(m_hWnd,&ps);
return 0;
}
//定义自己的应用程序类
class CMyWinApp:public CWinApp{
public:
//此函数内的this指针,为TheApp的地址
virtual BOOL InitInstance();
};
//重写应用程序类中的初始化函数 InitInstance
BOOL CMyWinApp::InitInstance()
{
CMyFrameWnd* pFrame = new CMyFrameWnd;
pFrame->Create(NULL,"MFCTest");
m_pMainWnd = pFrame;
pFrame->ShowWindow(SW_SHOW);
pFrame->UpdateWindow();
return TRUE;
}
//爆炸点 应用程序类的实例化对象
CMyWinApp theApp;
MFC之消息映射的方式实现消息处理(不重写WindowProc)
最新推荐文章于 2024-05-03 22:43:37 发布