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

📄 helpdlg.cpp

📁 模拟电子课程的教学演示程序
💻 CPP
字号:
// HelpDlg.cpp : implementation file
//

#include "stdafx.h"
#include "elecdemo.h"
#include "HelpDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CHelpDlg dialog


CHelpDlg::CHelpDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CHelpDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CHelpDlg)
	m_HelpText = _T("");
	//}}AFX_DATA_INIT
}


void CHelpDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CHelpDlg)
	DDX_Control(pDX, IDOK, m_OK);
	DDX_Text(pDX, IDC_EDIT_HELP, m_HelpText);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CHelpDlg, CDialog)
	//{{AFX_MSG_MAP(CHelpDlg)
	ON_WM_PAINT()
	ON_WM_CTLCOLOR()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CHelpDlg message handlers

BOOL CHelpDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	CString path=getPath()+"help.txt";
    m_HelpText=ReadHelpFile(path);
	//AfxMessageBox(m_HelpText);
//	m_HelpText="sfasdfsadf\r\nsdfasdfa";
	m_OK.SetShade(SHS_NOISE|SHS_METAL,8,10,20,RGB(0,0,255));
    CenterWindow();	
    UpdateData(FALSE);

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

CString CHelpDlg::ReadHelpFile(CString name)
{
	CString str;
	CFileException ex;   
	CFile file;
	if (!file.Open(name,CFile::modeRead | CFile::shareDenyWrite, &ex))
	{
		AfxMessageBox("打不开帮助文件");
	}
	else
	{
		 BYTE buffer[4096];
		 DWORD dwRead;
		 do
		 {
			 dwRead = file.Read(buffer, 4096);
			 str+=buffer;
		 }while (dwRead > 0);
		 file.Close();
	}
	for(int i=0;i<str.GetLength();i++)
	{
		if(str.GetAt(i)=='\n')
		{
			//str.SetAt(i,'\r');
		//	str.Insert(i,'\n');
		}
	}
	return str;
}

void CHelpDlg::OnPaint() 
{
	CPaintDC dc(this); // device context for painting
	

	CRect rect;
	GetWindowRect(rect);	

	if(m_bmpBack.m_hObject==NULL)
	{
		CString str;
		str=getPath()+"back.bmp";
		if(!LoadPictureFile(str,&m_bmpBack,m_backSize))
			return ;
	}   

	CDC tmpDC;
	tmpDC.CreateCompatibleDC(&dc);
	tmpDC.SelectObject(&m_bmpBack);    
	
	dc.StretchBlt(0,0,rect.Width(),rect.Height(),&tmpDC,0,0,m_backSize.cx,
		m_backSize.cy,SRCCOPY);
	// Do not call CDialog::OnPaint() for painting messages
}

HBRUSH CHelpDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
{
	HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

	if(nCtlColor==CTLCOLOR_EDIT)
	{  
		HBRUSH hb=::CreateSolidBrush(RGB(227,192,122));
		pDC->SetBkMode(TRANSPARENT);
		return hb;
	}
	return hbr;
}

⌨️ 快捷键说明

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