⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 imgreviewview.cpp

📁 Resource editor base speadrum Chinese mobile
💻 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 + -