刚刚开始学习VC ,我按照书上写的方法加载菜单(api部分)
BOOL CMyWnd::PreCreatWindow(CREATESTRUCT&cs)
{
cs.hMenu =LoadMenu(NULL,MAKEINTRESOURCE(IDR_MENU1));
return CFrameWnd::PreCreateWindow (cs);
}可是为什么运行之后只显示我加载的图片而没有菜单呢
BOOL CMyWnd::PreCreatWindow(CREATESTRUCT&cs)
{
cs.hMenu =LoadMenu(NULL,MAKEINTRESOURCE(IDR_MENU1));
return CFrameWnd::PreCreateWindow (cs);
}可是为什么运行之后只显示我加载的图片而没有菜单呢
#include<afxwin.h>
#include"resource.h"
class CMyWnd:public CFrameWnd
{
CBitmap m_Bitmap;
int m_nHeight;
int m_nWidth;
public:
CMyWnd();
BOOL PreCreatWindow(CREATESTRUCT&cs);//载入菜单
protected:
afx_msg void OnPaint();
afx_msg void OnOpen();
DECLARE_MESSAGE_MAP()
};
BEGIN_MESSAGE_MAP(CMyWnd,CFrameWnd)
ON_WM_PAINT()
ON_COMMAND(ID_OPEN,OnOpen)
END_MESSAGE_MAP()
CMyWnd::CMyWnd()
{
m_Bitmap.LoadBitmap (IDB_BITMAP1);
BITMAP BM;
m_Bitmap.GetBitmap (&BM);
m_nWidth=BM.bmWidth ;
m_nHeight=BM.bmHeight ;
}
BOOL CMyWnd::PreCreatWindow(CREATESTRUCT&cs)//载入菜单的实现
{
cs.hMenu =LoadMenu(NULL,MAKEINTRESOURCE(IDR_MENU1));
return CFrameWnd::PreCreateWindow (cs);
}void CMyWnd::OnOpen()
{
Invalidate();
}
void CMyWnd::OnPaint()
{ CPaintDC dc(this);
CDC MemDC;
MemDC.CreateCompatibleDC (NULL);
MemDC.SelectObject (&m_Bitmap);
dc.BitBlt(0,0,m_nWidth,m_nHeight,&MemDC,0,0,SRCCOPY);}class CMyApp:public CWinApp
{
public:
BOOL InitInstance();
};
BOOL CMyApp::InitInstance ()
{
CMyWnd*pFrame=new CMyWnd;
pFrame->Create (0,_T("A Cake Move on Screen"));
pFrame->ShowWindow (SW_SHOWMAXIMIZED);
pFrame->UpdateWindow ();
this->m_pMainWnd =pFrame;
return TRUE;
}
CMyApp ThisApp;