demoview.cpp
来自「Visual_C++.NET实用编程百例」· C++ 代码 · 共 140 行
CPP
140 行
// demoView.cpp : CdemoView 类的实现
//
#include "stdafx.h"
#include "demo.h"
#include "demoDoc.h"
#include "demoView.h"
#include ".\demoview.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
// CdemoView
IMPLEMENT_DYNCREATE(CdemoView, CView)
BEGIN_MESSAGE_MAP(CdemoView, CView)
// 标准打印命令
ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
ON_COMMAND(ID_DEMO, OnDemo)
END_MESSAGE_MAP()
// CdemoView 构造/析构
CdemoView::CdemoView()
{
// TODO: 在此处添加构造代码
}
CdemoView::~CdemoView()
{
}
BOOL CdemoView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: 在此处通过修改 CREATESTRUCT cs 来修改窗口类或
// 样式
return CView::PreCreateWindow(cs);
}
// CdemoView 绘制
void CdemoView::OnDraw(CDC* /*pDC*/)
{
CdemoDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
// TODO: 在此处为本机数据添加绘制代码
}
// CdemoView 打印
BOOL CdemoView::OnPreparePrinting(CPrintInfo* pInfo)
{
// 默认准备
return DoPreparePrinting(pInfo);
}
void CdemoView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: 打印前添加额外的初始化
}
void CdemoView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: 打印后添加清除过程
}
// CdemoView 诊断
#ifdef _DEBUG
void CdemoView::AssertValid() const
{
CView::AssertValid();
}
void CdemoView::Dump(CDumpContext& dc) const
{
CView::Dump(dc);
}
CdemoDoc* CdemoView::GetDocument() const // 非调试版本是内联的
{
ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CdemoDoc)));
return (CdemoDoc*)m_pDocument;
}
#endif //_DEBUG
// CdemoView 消息处理程序
void CdemoView::OnDemo()
{
// TODO: 在此添加命令处理程序代码
try
{
GetException();
}
catch(int e)
{
AfxMessageBox("这是捕获的整数异常");
}
catch(char* e)
{
AfxMessageBox("这是捕获的字符异常");
}
catch(...)
{
AfxMessageBox("这是其他类型的异常");
}
}
void CdemoView::GetException(void)
{
static int i;
switch(i++%3)
{
case 0:
throw (int)1;
break;
case 1:
throw "char";
break;
case 2:
throw (double)0.5;
break;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?