#include <afxwin.h>
class cmframewnd:public CFrameWnd
{
public:
//virtual LRESULT WindowProc(UINT message,WPARAM wParam,LPARAM lParam);
//DECLARE_MESSAGE_MAP()
protected:
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
afx_msg void OnPaint();
//DECLARE_MESSAGE_MAP()
protected:
static const AFX_MSGMAP* PASCAL GetThisMessageMap();
virtual const AFX_MSGMAP* GetMessageMap() const;
};
//BEGIN_MESSAGE_MAP(cmframewnd,CFrameWnd)
//ON_WM_CREATE()
//ON_WM_PAINT()
//END_MESSAGE_MAP()
PTM_WARNING_DISABLE
const AFX_MSGMAP* cmframewnd::GetMessageMap() const
{
return GetThisMessageMap();
}
const AFX_MSGMAP* PASCAL cmframewnd::GetThisMessageMap()
{
typedef cmframewnd ThisClass;
typedef CFrameWnd TheBaseClass;
static const AFX_MSGMAP_ENTRY _messageEntries[] = {
{ WM_CREATE, 0, 0, 0, AfxSig_is, (AFX_PMSG) (AFX_PMSGW)
(static_cast< int (AFX_MSG_CALL CWnd::*)(LPCREATESTRUCT) > ( &ThisClass :: OnCreate)) },
{ WM_PAINT, 0, 0, 0, AfxSig_vv, (AFX_PMSG)(AFX_PMSGW)
(static_cast< void (AFX_MSG_CALL CWnd::*)(void) > ( &ThisClass :: OnPaint)) },
{0, 0, 0, 0, AfxSig_end, (AFX_PMSG)0 }
};
static const AFX_MSGMAP messageMap = { &TheBaseClass::GetThisMessageMap, &_messageEntries[0] };
return &messageMap;
}
PTM_WARNING_RESTORE
int cmframewnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
AfxMessageBox("hello");
return 0;
}
void cmframewnd::OnPaint()
{
PAINTSTRUCT ps = {0};
HDC hdc = ::BeginPaint(m_hWnd,&ps);
::TextOut(hdc,100,100,"hello",5);
::EndPaint(m_hWnd,&ps);
}
class cmwinapp:public CWinApp
{
public:
virtual BOOL InitInstance();
};
cmwinapp theapp;
BOOL cmwinapp::InitInstance()
{
cmframewnd* pframe = new cmframewnd;
pframe->Create(NULL,"MFCmsg");
m_pMainWnd = pframe;
m_pMainWnd->ShowWindow(SW_SHOW);
m_pMainWnd->UpdateWindow();
return TRUE;
}
/*LRESULT cmframewnd::WindowProc(UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_CREATE:
{
AfxMessageBox("hello");
break;
}
case WM_PAINT:
{
PAINTSTRUCT ps = {0};
HDC hdc = ::BeginPaint(m_hWnd,&ps);
::TextOut(hdc,100,100,"hello",5);
::EndPaint(m_hWnd,&ps);
break;
}
}
return CFrameWnd::WindowProc(message,wParam,lParam);
}*/
一个代码看懂mfc消息映射
最新推荐文章于 2019-05-23 10:37:32 发布