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

📄 texiccb.h

📁 你玩扫雷吗?你的显示器用的难道是640x480?
💻 H
字号:
// TExicKJ.h: interface for the TExicKJ class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_TEXICCB_H__88B4E241_7480_11D6_A9BC_0020EDA78BC0__INCLUDED_)
#define AFX_TEXICCB_H__88B4E241_7480_11D6_A9BC_0020EDA78BC0__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

#include "TExic.h"


enum
{
	S_Null,//未按
	S_Open,//打开
	S_Mark,//旗
	S_Down,//压下,等待打开
	S_Test,//作弊
	
	N_X=60,N_Y=48
};

struct SQ
{
	unsigned int mine:1;
	unsigned int state:3;
};


class TData
{
public:
	int Mine();//地雷数
	int W(),H();
	SQ  d[N_X][N_Y];
	void Reset();
	TData();
	SQ&  GetD(int x,int y);
	SQ&  GetD(int i);
	int  Getint(int x,int y);//应该显示的数字
	int  GetMark(int x,int y);//周围已标志的数量
	bool IsState(unsigned int state,int x,int y);
	bool IsState(unsigned int state,int i);
	bool IsMine(int x,int y);
	bool IsNumb(int x,int y);
	bool Inside(int x,int y);

	int  GetReset();//返回示标志地雷数
	bool OK();//全部打开
	void MarkAll();//是地雷的全部标志
};




class TExicCB:public TExic
{	
// Attributes
public:
	TData    m_Data;
	HPEN     m_penBlack,m_penWhite;
	HDC      m_DC32  ;HBITMAP  m_bmp32;//主窗口32
	HDC      m_DC24  ;HBITMAP  m_bmp24;//主窗口24
	HDC      m_DC123 ;HBITMAP  m_bmp123;//数字
	HDC      m_DCHead;HBITMAP  m_bmpHead;//人头

	time_t m_tBegin;
	int  m_Sec;//用时
	int  m_X0,m_Y0;
	int  m_posMouse;
	bool m_Over,m_Begin;
	bool m_bHitHead;//按在人头上
	//int  GetReset();//返回示标志地雷数
	POINT GetPos(int n);//n= 1-地雷数   2-时间   3-人头

public:
	void UpBox(TDC& dc,int l,int t,int w,int h,bool bDown=false);

public:
	void Open(int n);
	void GameOver();
	void DoubleDown(int n);
	void DoubleUp(int n,bool bDone=false);
	void LbDown(int n);
	void LbUp(int n,bool bDone=false);
	void Draw(TDC& dc,int x,int y,int n32=-1);

public:
	TExicCB();
	~TExicCB();
	void Init();

	UINT OnChar(HWND hwnd,char c);
	UINT OnKeyDown(HWND hwnd,UINT key);

public:
	void RedrawWindow();
	virtual void Close(HWND hwnd);
	virtual void OnTimer(HWND hwnd,UINT id);
	virtual void SetupWindow(HWND hParent);
	virtual void OnDraw(TDC& dc);
	virtual UINT OnCommand(HWND hwnd,WPARAM wParam, LPARAM lParam);
	virtual UINT OnMessage(HWND hwnd,UINT message, WPARAM wParam, LPARAM lParam);
	virtual UINT OnSize(HWND hwnd, WPARAM wParam,int x,int y );

	void OnLButtonDown(UINT nFlags, POINT point);
	void OnLButtonUp(UINT nFlags, POINT point);
	void OnRButtonDown(UINT nFlags, POINT point);
	void OnRButtonUp(UINT nFlags, POINT point);
	void OnMouseMove(UINT nFlags, POINT point);
	void OnBegin();
};


#endif // !defined(AFX_TEXICKJ_H__88B4E241_7480_11D6_A9BC_0020EDA78BC0__INCLUDED_)

⌨️ 快捷键说明

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