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

📄 led.cpp

📁 自己编写的一个简单的扫雷程序,主框架是基于对话框的
💻 CPP
字号:
// LED.cpp : implementation file
//

#include "stdafx.h"
#include "Mine.h"
#include "LED.h"

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


/////////////////////////////////////////////////////////////////////////////
// CLED

CLED::CLED()
{
}

CLED::CLED(CWnd* parent,int range,int number,UINT nID,CPoint leftup)
{
	m_Range = range;
	m_Number = number;
	m_LeftUp = leftup;
	m_LEDRect.SetRect(leftup,CPoint(leftup.x+range*BITMAP_WIDE,leftup.y+BITMAP_HEIGHT));

	Create(	AfxRegisterWndClass(0),//全局函数AfxRegisterWndClass() to get lpszClassName
			NULL,
			WS_CHILD|WS_VISIBLE,
			m_LEDRect,
			parent,//指向其父类的指针,即CBombDialog
			nID, //子窗口的ID值,这在Resource.h中定义
			NULL);
	/////////////////////////////////////////////////必须要有Create(),主函数中的Delete才有效
	//This method creates a Windows CE child window and attaches it to the CWnd object
}

CLED::~CLED()
{
}


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


/////////////////////////////////////////////////////////////////////////////
// CLED message handlers

void CLED::SetNumber(int number)
{
	m_Number = number;

}

int CLED::GetNumber()
{
	return m_Number;

}

void CLED::DisplayNumber(CDC* pDC)//要与雷区一致地在主窗口中显示,则要把主窗口的pDC传过来
{
	//CDC	* pDC=GetDC();
	CBitmap bitmap;
	CDC dc;
    bitmap.LoadBitmap(IDB_LED);//都在这个总位图中取局部位图,所以先确定
	dc.CreateCompatibleDC(pDC);
	dc.SelectObject(&bitmap);

	int left,order;
	left = m_Number;
	int nYLocation = 0;

	for(int i=1;i<=m_Range;i++)
    {
		order = left/(int(pow(10.0,m_Range-i)));
		left = left - order*(int(pow(10.0,m_Range-i)));
		nYLocation = (11-order)*23;
		pDC->BitBlt(m_LeftUp.x+(i-1)*BITMAP_WIDE,1,BITMAP_WIDE,BITMAP_HEIGHT,&dc,0,nYLocation,SRCCOPY);
	}
}

⌨️ 快捷键说明

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