italicsview.cpp

来自「一系列的c++例子 一步一步由浅入深 有 聊天室」· C++ 代码 · 共 85 行

CPP
85
字号
// ItalicsView.cpp : implementation file
//

#include "stdafx.h"
#include "Ex_MulView.h"
#include "Ex_MulViewDoc.h"
#include "ItalicsView.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CItalicsView

IMPLEMENT_DYNCREATE(CItalicsView, CView)

CItalicsView::CItalicsView()
{
}

CItalicsView::~CItalicsView()
{
}


BEGIN_MESSAGE_MAP(CItalicsView, CView)
	//{{AFX_MSG_MAP(CItalicsView)
		// NOTE - the ClassWizard will add and remove mapping macros here.
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CItalicsView drawing

void CItalicsView::OnDraw(CDC* pDC)
{
	CEx_MulViewDoc* pDoc = GetDocument();
	// TODO: add draw code here

	LOGFONT lf;
	memset(&lf,0,sizeof(LOGFONT));
	lf.lfItalic=TRUE;
	lf.lfUnderline=false;
	CFont font;
	font.CreatePointFontIndirect(&lf);
	CFont *poldfont=pDC->SelectObject(&font);

	TEXTMETRIC tm;
	pDC->GetTextMetrics(&tm);
	int y=10;

	for(int i=0;i<pDoc->m_string.GetSize();i++)
	{
		pDC->TextOut(0,y,pDoc->m_string[i]);
		y+=tm.tmHeight+tm.tmExternalLeading;
	}
	pDC->SelectObject(poldfont);
}

/////////////////////////////////////////////////////////////////////////////
// CItalicsView diagnostics

#ifdef _DEBUG
void CItalicsView::AssertValid() const
{
	CView::AssertValid();
}

void CItalicsView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
}
CEx_MulViewDoc* CItalicsView::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CEx_MulViewDoc)));
	return (CEx_MulViewDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CItalicsView message handlers

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?