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

📄 puzzledlg.h

📁 拼图游戏
💻 H
字号:
// PuzzleDlg.h : header file
//

#if !defined(AFX_PUZZLEDLG_H__9251D21E_7E90_4D26_940A_641F9599851B__INCLUDED_)
#define AFX_PUZZLEDLG_H__9251D21E_7E90_4D26_940A_641F9599851B__INCLUDED_

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

/////////////////////////////////////////////////////////////////////////////
// CPuzzleDlg dialog
#define MAX_ROW 11			//图片的最大分块数
#define MAX_COL 11
#define MAX_STEPS 1001		//游戏中图块的最大移动步数

//每个图块的位置
typedef struct  tagPICBLOCKPOSITION
{
	int xPos;
	int yPos;
}PICBLOCKPOSITION;				

class CPuzzleDlg : public CDialog
{
public:
	CPuzzleDlg(CWnd* pParent = NULL);	// standard constructor
	~CPuzzleDlg();
// Dialog Data
	//{{AFX_DATA(CPuzzleDlg)
	enum { IDD = IDD_PUZZLE_DIALOG };
		// NOTE: the ClassWizard will add data members here
	//}}AFX_DATA

	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CPuzzleDlg)
	public:
	virtual BOOL PreTranslateMessage(MSG* pMsg);
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);	// DDX/DDV support
	//}}AFX_VIRTUAL

// Implementation
protected:
	//变量名的定义
	CStatusBarCtrl      m_wndStatusBar;                     //状态栏
	HICON				m_hIcon;							//图标
	CBitmap				m_bitmap;							//位图
	UINT				m_nPicID;							//图片的ID号
	int					m_nPicRowNum;						//图片在每行中的块数
	int					m_nPicColNum;						//图片在每列中的块数
	int					m_nPicBlockWidth;					//每块图片的宽度
	int					m_nPicBlockHeight;					//每块图片的高度
	int					m_nClientWidth;						//对话框客户区的宽度和高度
	int					m_nClientHeight;
	PICBLOCKPOSITION	m_positionGameBK;					//可移动方块的位置 			
	PICBLOCKPOSITION	m_positionPicBlockInfo[MAX_ROW][MAX_ROW]; //图块的位置信息
	int					m_nGameStartedSteps;				//拼图中移动图块的次数
	int					m_nAutoPlayStartedSteps;				//自动拼图中的移动图块步数
	int                 m_nGameStepsArray[MAX_STEPS];		//游戏开始进度数组
	BOOL				m_bAutoPlay;						//自动拼图标志
	
	//函数的定义
	void OnSetGameBK();										//设置游戏背景
	void OnSetLineToDivideUpPic();							//设置分割图片的细线
	void OnPaintBlockPic(PICBLOCKPOSITION,PICBLOCKPOSITION);//绘制每一个图块
	void OnInitialBlocPicPositionInfo();					//初始化每个图块的位置
	void OnInitialPuzzleGame();								//初始化拼图游戏
	void IsWonTheGame();


	// Generated message map functions
	//{{AFX_MSG(CPuzzleDlg)
	virtual void OnOK();
	virtual void OnCancel();
	virtual BOOL OnInitDialog();
	afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
	afx_msg void OnPaint();
	afx_msg HCURSOR OnQueryDragIcon();
	afx_msg void OnAboutdlg();
	afx_msg void OnPicPreview();
	afx_msg void OnNewgame();
	afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
	afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
	afx_msg void OnPic1();
	afx_msg void OnExit();
	afx_msg void OnPic2();
	afx_msg void OnClose();
	afx_msg void OnSetting();
	afx_msg void OnPic3();
	afx_msg void OnAutopuzzle();
	afx_msg void OnTimer(UINT nIDEvent);
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_PUZZLEDLG_H__9251D21E_7E90_4D26_940A_641F9599851B__INCLUDED_)

⌨️ 快捷键说明

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