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

📄 demoview.cpp

📁 这是用VC6.0开发的集词法分析、语法分析、语义分析为一体的一个程序
💻 CPP
字号:
// DemoView.cpp : implementation file
//

#include "stdafx.h"
#include "scanner.h"
#include "DemoView.h"
//#include "CompileWord.h"
#include "scannerView.h"

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

/////////////////////////////////////////////////////////////////////////////
// CDemoView

IMPLEMENT_DYNCREATE(CDemoView, CView)

CDemoView::CDemoView()
{	
	m_showError = false;    
	m_pErrorNode = NULL;
	
}

CDemoView::~CDemoView()
{
}


BEGIN_MESSAGE_MAP(CDemoView, CView)
	//{{AFX_MSG_MAP(CDemoView)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDemoView drawing

void CDemoView::OnDraw(CDC* pDC)
{
	CDocument* pDoc = GetDocument();
	// TODO: add draw code here
	CRect   rect;   
    GetClientRect(&rect);   
    pDC->FillSolidRect(&rect,RGB(255,255,255));   

	CString strError;
	
    int x=0;
	int y=0;
	//CDC *p_DC=GetDC();
	
	//p_DC->TextOut(x,y,"Program compile infomations:");
	pDC->TextOut(x,y,"Program compile infomations:");
	y+=20;
		
	if(m_showError)
    {
		if(m_pErrorNode->next == NULL)
		{
		    pDC->TextOut(x,y,"Compiling passed!Success!");
		    return;
		}	
		while(m_pErrorNode->next)
		{
			strError.Empty();
			m_pErrorNode = m_pErrorNode->next;
			strError.Format("第%d行,第%d列,%s",m_pErrorNode->intRows,m_pErrorNode->intCols,m_pErrorNode->description);
            pDC->TextOut(x,y,strError);
            y+=20;
		}
		
			
	}
	
	//CScannerView *pView;
	//pView->GetActiveView();
	//pDC->TextOut(x,y,strErrorOut);
	
}


/////////////////////////////////////////////////////////////////////////////
// CDemoView diagnostics

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

void CDemoView::Dump(CDumpContext& dc) const
{
	CView::Dump(dc);
	
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CDemoView message handlers

void CDemoView::MyDrawing(PErrorNode pErrorCollection)
{
	m_showError=true;
	CDC *pDC=GetDC();
	m_pErrorNode = pErrorCollection;
	OnDraw(pDC);
    m_showError=false;
}

⌨️ 快捷键说明

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