📄 puzzledlg.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 + -