📄 imgreviewview.cpp
字号:
// PicReviewView.cpp : implementation file
//
#include "stdafx.h"
#include "resourceeditor.h"
#include "ImgReviewView.h"
#include "DirFileInfo.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CImgReviewView
IMPLEMENT_DYNCREATE(CImgReviewView, CScrollView)
CImgReviewView::CImgReviewView()
{
m_hBmp = NULL;
}
CImgReviewView::~CImgReviewView()
{
}
BEGIN_MESSAGE_MAP(CImgReviewView, CScrollView)
//{{AFX_MSG_MAP(CImgReviewView)
// NOTE - the ClassWizard will add and remove mapping macros here.
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CImgReviewView drawing
void CImgReviewView::OnDraw(CDC* pDC)
{
//CDocument* pDoc = GetDocument();
// TODO: add draw code here
if( NULL != m_hBmp )
{
BITMAP bmpInfo;
VERIFY( ::GetObject(m_hBmp, sizeof(BITMAP), &bmpInfo) );
CDC memDC;
VERIFY( memDC.CreateCompatibleDC(pDC) );
HGDIOBJ hOld = ::SelectObject(memDC.m_hDC, m_hBmp);
pDC->BitBlt(20, 20, bmpInfo.bmWidth, bmpInfo.bmHeight, &memDC, 0, 0, SRCCOPY);
memDC.SelectObject(hOld);
memDC.DeleteDC();
}
}
void CImgReviewView::OnInitialUpdate()
{
CScrollView::OnInitialUpdate();
CSize sizeTotal;
// TODO: calculate the total size of this view
sizeTotal.cx = sizeTotal.cy = 300;
SetScrollSizes(MM_TEXT, sizeTotal);
}
/////////////////////////////////////////////////////////////////////////////
// CImgReviewView diagnostics
#ifdef _DEBUG
void CImgReviewView::AssertValid() const
{
CScrollView::AssertValid();
}
void CImgReviewView::Dump(CDumpContext& dc) const
{
CScrollView::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CImgReviewView message handlers
void CImgReviewView::OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint)
{
// TODO: Add your specialized code here and/or call the base class
if( pSender != this && lHint == WM_CHANGE_SEL_ITEM )
{
CHANGE_SEL_DATA * pSelData = (CHANGE_SEL_DATA *)pHint;
if( pSelData != NULL )
{
m_hBmp = pSelData->hBmp;
BITMAP bmpInfo = { 0 };
if( m_hBmp != NULL )
GetObject(m_hBmp, sizeof(BITMAP), &bmpInfo);
CSize sizeTotal;
sizeTotal.cx = bmpInfo.bmWidth + 60;
sizeTotal.cy = bmpInfo.bmHeight + 40;
SetScrollSizes(MM_TEXT, sizeTotal);
Invalidate( pSelData->bFreshBg );
}
else
{
Invalidate( TRUE );
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -