📄 cfivechess.h
字号:
#if !defined(AFX_FIVECHESS1_H__143CFFD1_A2E5_44A6_9F84_EB4B364644CF__INCLUDED_)
#define AFX_FIVECHESS1_H__143CFFD1_A2E5_44A6_9F84_EB4B364644CF__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// FiveChess1.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CFiveChess window
class CFiveChess : public CWnd
{
// Construction
public:
CFiveChess();
// Attributes
private:
CDC *pCurrent_DC; //当前窗口的DC指针
CBitmap m_ChessBoard_Bitmap; //棋盘位图对象
CBitmap m_BlackChess_Bitmap; //黑棋子位图对象
CBitmap m_WhiteChess_Bitmap; //白棋子位图对象
CBitmap m_Complex_Bitmap; //粘贴有棋子的棋盘
CBitmap m_Mask_Bitmap; //存放掩码的位图对象
CDC m_BlackChess_DC; //粘贴黑棋子的DC
CDC m_WhiteChess_DC; //粘贴黑棋子的DC
CDC m_ChessBoard_DC; //粘贴棋盘的DC
CDC m_Complex_DC; //粘贴棋盘与棋子混合后的图片的DC
CDC m_Mask_DC; //粘贴掩码的DC
CDC m_Null_DC; //建立一个图片全部为黑色的DC
CRect m_current_Wnd_Rect; //当前窗口的客户端的矩形
BITMAP m_ChessBoard_BITMAP; //棋盘的位图结构实例
BITMAP m_BlackChess_BITMAP; //黑棋的位图结构实例
const int m_ChessBoard_TopLeft_x; //棋子所要放置的最左上角的坐标的横坐标(相对于当前窗口的客户区域)
const int m_ChessBoard_TopLeft_y; //棋子所要放置的最左上角的坐标的纵坐标(相对于当前窗口的客户区域)
const int m_ChessBoardPane_Distance;//棋盘上的棋子的宽度
const int m_ChessBoardPane_Number; //正方形棋盘上棋子的行数(列数)
const int m_ChessPicture_Size; //棋子图片的长度(或者宽度)
int m_CountChess; //计算棋盘上棋子的数目
int m_ChessBoard_state[15][15]; //棋盘上棋子的状态
bool IS_BLACK_CHESS; //加入当前的棋子是黑棋时为真
CPoint m_Previous_Point; //记录前一次操作的点的位置
int m_Count_Adacency_Chess; //记录相邻的相同棋子的数目
// Operations
public:
void create_window(DWORD style, CWnd *pCwnd, CRect rect, UINT id); //创建窗口并对窗口实例进行初始化的函数
bool paste_Chess(CPoint); //粘贴棋子的函数
void set_Window_Size(); //设置窗口位置和大小的函数
void get_Chess(int Current_X, int Current_Y); //改变棋子的外观
void set_Round_Chess(); //初始改变棋子为圆形
CPoint get_Modified_Position(int x, int y); //通过计算将传入的点的坐标修改为处理过的坐标
void m_Draw_Rectangle(CPoint); //以特定的点特定的长度来画正方形框
void restart_Game(); //重新开始游戏(即将棋盘上的棋子全部清空)
void Anyone_Success(int row, int column); //当前是否有某一方获胜
void is_Success();
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CFiveChess)
//}}AFX_VIRTUAL
// Implementation
public:
virtual ~CFiveChess();
// Generated message map functions
protected:
//{{AFX_MSG(CFiveChess)
afx_msg void OnPaint();
afx_msg void OnClose();
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_FIVECHESS1_H__143CFFD1_A2E5_44A6_9F84_EB4B364644CF__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -