//GameApp.h
#pragma once
#include "afxwin.h"
class CGameApp :public CWinApp
{
public:
CGameApp(void);
public:
~CGameApp(void);
BOOL InitInstance();
};
//GameApp.cpp
#include "GameApp.h"
#include "GameWnd.h"
CGameApp theApp;
CGameApp::CGameApp(void)
{
}
CGameApp::~CGameApp(void)
{
}
BOOL CGameApp::InitInstance()
{
m_pMainWnd = new CGameWnd;
m_pMainWnd->ShowWindow(SW_NORMAL);
m_pMainWnd->UpdateWindow();
return true;
}
//GameWnd.h
class CGameWnd :public CFrameWnd
{
public:
CGameWnd(void);
public:
~CGameWnd(void);
}
//GameWnd.cpp
#include "GameWnd.h"
CGameWnd::CGameWnd(void)
{
Create(NULL,L"测试窗口",WS_OVERLAPPEDWINDOW);
m_Bitmap = new CBitmap;
m_Bitmap->m_hObject = LoadImageW(NULL,L"Winter.bmp",IMAGE_BITMAP,800,600,LR_LOADFROMFILE);
mdc = new CDC;
CClientDC cdc(this);
mdc->CreateCompatibleDC(&cdc);
mdc->SelectObject(m_Bitmap);
}
BOOL CGameWnd::OnEraseBkgnd(CDC* pDC)
{
pDC->BitBlt(0,0,800,600,mdc,0,0,SRCCOPY);
CRect rect;
GetClientRect(rect);
pDC->StretchBlt(0,0,rect.Width(),rect.Height(),mdc,0,0,800,600,SRCCOPY);
return true;
}