📄 bmpview.cpp
字号:
// BmpView.cpp : implementation of the CBmpView class
//
#include "stdafx.h"
#include "Bmp.h"
#include "BmpDoc.h"
#include "BmpView.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CBmpView
IMPLEMENT_DYNCREATE(CBmpView, CView)
BEGIN_MESSAGE_MAP(CBmpView, CView)
//{{AFX_MSG_MAP(CBmpView)
ON_WM_PAINT()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CBmpView construction/destruction
CBmpView::CBmpView()
{
// TODO: add construction code here
}
CBmpView::~CBmpView()
{
}
BOOL CBmpView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
return CView::PreCreateWindow(cs);
}
/////////////////////////////////////////////////////////////////////////////
// CBmpView drawing
void CBmpView::OnDraw(CDC* pDC)
{
CBmpDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
// TODO: add draw code for native data here
}
/////////////////////////////////////////////////////////////////////////////
// CBmpView diagnostics
#ifdef _DEBUG
void CBmpView::AssertValid() const
{
CView::AssertValid();
}
void CBmpView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
CBmpDoc* CBmpView::GetDocument() // non-debug version is inline
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CBmpDoc)));
return (CBmpDoc*)m_pDocument;
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
void CBmpView::OnPaint()
{
RECT rect;
CPaintDC dc(this); //建立响应WM_PAINT消息的DC
CDC *md = new CDC; //建立一暂存DC md
CBitmap *bitmap = new CBitmap; //建立CBitmap位图对象
GetClientRect(&rect); //取得操作窗口大小
md->CreateCompatibleDC(&dc); //将md转换成与dc兼容的DC
bitmap->m_hObject = (HBITMAP)::LoadImage(NULL,"zhulin.bmp",
IMAGE_BITMAP,rect.right,rect.bottom,LR_LOADFROMFILE);
//加载位图
md->SelectObject(bitmap); //选择位图对象到md中
dc.BitBlt(0,0,rect.right,rect.bottom,md,0,0,SRCCOPY);
//将暂存DC中的位图贴到显示DC中
delete md; //释放资源
delete bitmap; //释放资源
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -