中国象棋控件 2.0.15
载入中...
搜索中...
未找到
Public 成员函数 | Protected 成员函数 | Private 类型 | Private 成员函数 | Private 属性 | 所有成员列表
CChineseChessView类 参考
类 CChineseChessView 继承关系图:
Inheritance graph
[图例]
CChineseChessView 的协作图:
Collaboration graph
[图例]

Public 成员函数

void AboutBox ()
 
int SetQiPangColor (COLORREF col)
 
COLORREF GetQiPangColor ()
 
int SetTiShiBoxColor (COLORREF col)
 
COLORREF GetTiShiBoxColor ()
 
virtual int SaveChessGame (LPCTSTR pszFile)
 
virtual int LoadChessGame (LPCTSTR pszFile)
 
virtual int SetRedName (LPCTSTR pszName)
 
virtual int SetBlackName (LPCTSTR pszName)
 
virtual int AddGameTag (LPCTSTR pszTag, LPCTSTR szVal)
 
CString GetGameTag (LPCTSTR szTag)
 
int SetChineseChessHandler (CChineseChessHandler *handler)
 
- Public 成员函数 继承自 CChineseChess
int SetBoardLayout (ENUM_BoardLayout layout)
 
ENUM_BoardLayout GetBoardLayout ()
 
bool GoChess (int i, int j, bool bNext=false)
 走棋
 
int NextStep ()
 函数名:NextStep 功 能:下步棋 参 数:无 返回值:走棋步数 作 者:康 林 版 本:1.0.0.1 日 期:2004-10-5 时 间:10:19:33
 
int PreviouStep ()
 函数名:PreviouStep 功 能:上步棋 参 数:无 返回值:走棋步数 作 者:康 林 版 本:1.0.0.1 日 期:2004-10-5 时 间:10:19:51
 
virtual int SaveChessGame (const char *pszFile)
 保存棋局。 根据文件扩展名来保存为相应的格式。 当前支持自定义格式、PGN格式
 
virtual int LoadChessGame (const char *pszFile)
 加载棋局。 根据文件扩展名来解析文件的格式。 当前支持自定义格式、PGN格式
 
time_t GetStartTime ()
 
int SetStartTime (const time_t &t)
 
time_t GetEndTime ()
 
int SetEndTime (const time_t &t)
 
std::string GetRedName ()
 
int SetRedName (const char *pszName)
 
std::string GetBlackName ()
 
int SetBlackName (const char *pszName)
 
std::string GetGameTag (const std::string &tag)
 
int AddGameTag (const std::string &szTag, const std::string &szVal)
 
int EnablePromptSound (bool sound=true)
 
bool getEnablePromptSound ()
 
int EnablePromptMessage (bool bMsg=true)
 
bool getEnablePromptMessage ()
 

Protected 成员函数

afx_msg int OnCreate (LPCREATESTRUCT lpCreateStruct)
 
afx_msg void OnLButtonUp (UINT nFlags, CPoint point)
 
afx_msg void OnKeyUp (UINT nChar, UINT nRepCnt, UINT nFlags)
 
afx_msg void OnSize (UINT nType, int cx, int cy)
 
virtual void OnDraw (CDC *pDC)
 
virtual int onPromptSound (PROMPT_SOUND sound)
 
virtual int onPromptMessage (CGoRule::ENUM_ReturnValue val)
 提示错误消息
 
virtual int onCleanPrompt (int i, int j)
 清除提示框
 
virtual int onDrawPrompt (int i, int j)
 画提示框
 
virtual int onGoChess (int i, int j, CPiece::ENUM_QiZi chess)
 走棋事件
 
- Protected 成员函数 继承自 CChineseChess
int CleanPrompt (int &i, int &j)
 清理提示,并把提示框位置设置成无效值
 
bool IsValidPosition (int i, int j)
 
int Initial ()
 
int ConvertQiPang (const int &i, const int &j, int &x, int &y)
 

Private 类型

enum  ENUM_ConvertCoordinate { XYToIJ , IJToXY }
 
enum  ENUM_XINWEI { XinWei , Left_XinWei , Right_XinWei }
 

Private 成员函数

BOOL ConvertCoordinate (long *x, long *y, int *i, int *j, ENUM_ConvertCoordinate eCC=XYToIJ)
 函数名:ConvertCoordinate 功 能:坐标转换 参 数: long *x:设备横坐标 long *y:设备纵坐标 int *i:棋盘横坐标[0,8] int *j:棋盘纵坐标[0,9] ENUM_ConvertCoordinate eCC:转换方式 XYToIJ:从设备坐标转换到棋盘坐标(默认值) IJToXY:从棋盘坐标转换到设备坐标 返回值:返回真值。 作 者:康 林 版 本:1.0.0.1 日 期:2004-8-24 时 间:15:01:37
 
void DrawXinWei (CDC *pdc, int i, int j, ENUM_XINWEI xinwei=XinWei)
 函数名:DrawXinWei 功 能:画星位 参 数: CDC *pdc:设备上下文 int i:星位的横坐标[0-8] int j:星位的纵坐标[0-9] ENUM_XINWEI xinwei:画的位置取下列值勤之一: XinWei:全画(默认值), Left_XinWei:画左边的星位 Right_XinWei:画右边的星位 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2004-8-18 时 间:17:56:58
 
BOOL DrawTiShiBox (CDC *pdc, int i, int j)
 函数名:DrawTiShiBox 功 能:画提示框 参 数: int i:棋盘横坐标[0-8] int j:棋盘纵坐标[0-9] 返回值:成功返回 true,否则返回 false 作 者:康 林 版 本:1.0.0.1 日 期:04-9-2 时 间:21:01:23
 
BOOL DrawQiZi (CDC *pdc, int i, int j, CPiece::ENUM_QiZi eQiZi)
 函数名:DrawQiZi 功 能:画棋子 参 数: int i:棋子横坐标[0-8] int j:棋子纵坐标[0-9] CPiece::ENUM_QiZi eQiZi:棋子 返回值:如果成功返回 true,否则返回 false 作 者:康 林 版 本:1.0.0.1 日 期:2004-9-1 时 间:19:47:24
 
void DrawQiPang (CDC *pdc, CRect rcBounds)
 函数名:DrawQiPang 功 能:画棋盘 参 数: CDC *pdc:设备上下文 CRect rcBounds:控件区域(包括边界) 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2004-8-18 时 间:17:10:23
 
BOOL DrawPicture (CDC *pdc, int i, int j, CBitmap *pbmp, BOOL CHHJKL=false)
 函数名:DrawPicture 功 能:画图片 参 数: CDC *pdc:设备上下文 int i:图片位置横坐标[0-8] int j:图片位置纵坐标[0-9] CBitmap *pbmp:图片指针 BOOL CHHJKL:画楚河汉界(默认值为 false) 返回值:成功返回 true 作 者:康 林 版 本:1.0.0.1 日 期:2004-10-1 时 间:18:59:53
 
void InvalidateRectage (int i, int j)
 函数名:InvalidateRectage 功 能:产生无效矩形,用于删除棋子 参 数: int i:棋盘横坐标[0-8] int j:棋盘横坐标[0-9] 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2004-9-26 时 间:10:49:56
 
BOOL SetQiPang (int width, int height)
 函数名:SetQiPang 功 能:设置棋盘位置 参 数: int width:控件窗口宽度 int height:控件窗口高度 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2020-5-12 时 间:11:27:12
 
BOOL PromptSound (LPCTSTR ID=NULL)
 函数名:PromptSound 功 能:播放声音 说 明:1、在“工程->设置->link->对象/库”中加入winmm.lib 2、加入头文件 #include <mmsystem.h> 参 数: LPCTSTR ID:声音的字符标志 返回值:如果成功返回 true,否则返回 false 作 者:康 林 版 本:1.0.0.1 日 期:2004-9-1 时 间:20:47:29
 

Private 属性

LONG m_QiPangStartX
 
LONG m_QiPangStartY
 
LONG m_QiPangDistance
 
COLORREF m_QiPangColor
 
COLORREF m_TiShiBoxColor
 
CBitmap m_Chu
 
CBitmap m_He
 
CBitmap m_Han
 
CBitmap m_Jie
 
CBitmap m_Copyright
 
CBitmap m_QiPangPicture
 
CBitmap m_RedShuai
 
CBitmap m_RedShi
 
CBitmap m_RedXiang
 
CBitmap m_RedMa
 
CBitmap m_RedChe
 
CBitmap m_RedBing
 
CBitmap m_RedPao
 
CBitmap m_BlackShuai
 
CBitmap m_BlackShi
 
CBitmap m_BlackXiang
 
CBitmap m_BlackMa
 
CBitmap m_BlackChe
 
CBitmap m_BlackBing
 
CBitmap m_BlackPao
 
CChineseChessHandlerm_pGoChessHandler
 

额外继承的成员函数

- Public 类型 继承自 CChineseChess
enum  _ENUM_BoardLayout {
  NoQi = 0 , OnlyTopBlack = 1 , OnlyBottomRed = 2 , SwapRedBetweenBlack = 4 ,
  OnlyTopRed = OnlyBottomRed | SwapRedBetweenBlack , OnlyBottomBlack = OnlyTopBlack | SwapRedBetweenBlack , TopBlackAndBottomRed = OnlyTopBlack | OnlyBottomRed , TopRedAndBottomBlack = TopBlackAndBottomRed | SwapRedBetweenBlack
}
 标准棋盘布局:详见《象棋竞赛规则(2011)》第一章 第1条。红棋在下,黑棋在上。 界面可以支持非标准棋盘布局(红在上,黑在下) 更多...
 
typedef enum CChineseChess::_ENUM_BoardLayout ENUM_BoardLayout
 标准棋盘布局:详见《象棋竞赛规则(2011)》第一章 第1条。红棋在下,黑棋在上。 界面可以支持非标准棋盘布局(红在上,黑在下)
 
- Protected 类型 继承自 CChineseChess
enum  PROMPT_SOUND {
  JiangJun , Eat , Go , NoGo ,
  Select
}
 提示音 更多...
 
enum  _ENUM_WalkState { RedReadly , RedWalked , BlackReadly , BlackWalked }
 
typedef enum CChineseChess::_ENUM_WalkState ENUM_WalkState
 
- Protected 属性 继承自 CChineseChess
CPiece::ENUM_QiZi m_ChessBoard [9][10]
 棋盘描述
 
ENUM_BoardLayout m_BoardLayout
 
ENUM_WalkState m_WalkState
 
int m_PreviouPositionX
 
int m_PreviouPositionY
 
int m_CurrentPositionX
 
int m_CurrentPositionY
 

详细描述

在文件 ChineseChessView.h34 行定义.

成员枚举类型说明

◆ ENUM_ConvertCoordinate

enum CChineseChessView::ENUM_ConvertCoordinate
private

在文件 ChineseChessView.h135 行定义.

◆ ENUM_XINWEI

enum CChineseChessView::ENUM_XINWEI
private

在文件 ChineseChessView.h139 行定义.

构造及析构函数说明

◆ CChineseChessView()

CChineseChessView::CChineseChessView ( )

在文件 ChineseChessView.cpp24 行定义.

◆ ~CChineseChessView()

CChineseChessView::~CChineseChessView ( )
virtual

在文件 ChineseChessView.cpp140 行定义.

成员函数说明

◆ AboutBox()

void CChineseChessView::AboutBox ( )

在文件 ChineseChessView.cpp199 行定义.

◆ AddGameTag()

int CChineseChessView::AddGameTag ( LPCTSTR  pszTag,
LPCTSTR  szVal 
)
virtual

在文件 ChineseChessView.cpp304 行定义.

◆ ConvertCoordinate()

BOOL CChineseChessView::ConvertCoordinate ( long *  x,
long *  y,
int *  i,
int *  j,
ENUM_ConvertCoordinate  eCC = XYToIJ 
)
private

函数名:ConvertCoordinate 功 能:坐标转换 参 数: long *x:设备横坐标 long *y:设备纵坐标 int *i:棋盘横坐标[0,8] int *j:棋盘纵坐标[0,9] ENUM_ConvertCoordinate eCC:转换方式 XYToIJ:从设备坐标转换到棋盘坐标(默认值) IJToXY:从棋盘坐标转换到设备坐标 返回值:返回真值。 作 者:康 林 版 本:1.0.0.1 日 期:2004-8-24 时 间:15:01:37

在文件 ChineseChessView.cpp584 行定义.

◆ DrawPicture()

BOOL CChineseChessView::DrawPicture ( CDC *  pdc,
int  i,
int  j,
CBitmap *  pbmp,
BOOL  CHHJKL = false 
)
private

函数名:DrawPicture 功 能:画图片 参 数: CDC *pdc:设备上下文 int i:图片位置横坐标[0-8] int j:图片位置纵坐标[0-9] CBitmap *pbmp:图片指针 BOOL CHHJKL:画楚河汉界(默认值为 false) 返回值:成功返回 true 作 者:康 林 版 本:1.0.0.1 日 期:2004-10-1 时 间:18:59:53

在文件 ChineseChessView.cpp1010 行定义.

◆ DrawQiPang()

void CChineseChessView::DrawQiPang ( CDC *  pdc,
CRect  rcBounds 
)
private

函数名:DrawQiPang 功 能:画棋盘 参 数: CDC *pdc:设备上下文 CRect rcBounds:控件区域(包括边界) 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2004-8-18 时 间:17:10:23

在文件 ChineseChessView.cpp621 行定义.

◆ DrawQiZi()

BOOL CChineseChessView::DrawQiZi ( CDC *  pdc,
int  i,
int  j,
CPiece::ENUM_QiZi  eQiZi 
)
private

函数名:DrawQiZi 功 能:画棋子 参 数: int i:棋子横坐标[0-8] int j:棋子纵坐标[0-9] CPiece::ENUM_QiZi eQiZi:棋子 返回值:如果成功返回 true,否则返回 false 作 者:康 林 版 本:1.0.0.1 日 期:2004-9-1 时 间:19:47:24

在文件 ChineseChessView.cpp912 行定义.

◆ DrawTiShiBox()

BOOL CChineseChessView::DrawTiShiBox ( CDC *  pdc,
int  i,
int  j 
)
private

函数名:DrawTiShiBox 功 能:画提示框 参 数: int i:棋盘横坐标[0-8] int j:棋盘纵坐标[0-9] 返回值:成功返回 true,否则返回 false 作 者:康 林 版 本:1.0.0.1 日 期:04-9-2 时 间:21:01:23

在文件 ChineseChessView.cpp860 行定义.

◆ DrawXinWei()

void CChineseChessView::DrawXinWei ( CDC *  pdc,
int  i,
int  j,
ENUM_XINWEI  xinwei = XinWei 
)
private

函数名:DrawXinWei 功 能:画星位 参 数: CDC *pdc:设备上下文 int i:星位的横坐标[0-8] int j:星位的纵坐标[0-9] ENUM_XINWEI xinwei:画的位置取下列值勤之一: XinWei:全画(默认值), Left_XinWei:画左边的星位 Right_XinWei:画右边的星位 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2004-8-18 时 间:17:56:58

在文件 ChineseChessView.cpp783 行定义.

◆ GetGameTag()

CString CChineseChessView::GetGameTag ( LPCTSTR  szTag)

在文件 ChineseChessView.cpp310 行定义.

◆ GetQiPangColor()

COLORREF CChineseChessView::GetQiPangColor ( )

在文件 ChineseChessView.cpp327 行定义.

◆ GetTiShiBoxColor()

COLORREF CChineseChessView::GetTiShiBoxColor ( )

在文件 ChineseChessView.cpp339 行定义.

◆ InvalidateRectage()

void CChineseChessView::InvalidateRectage ( int  i,
int  j 
)
private

函数名:InvalidateRectage 功 能:产生无效矩形,用于删除棋子 参 数: int i:棋盘横坐标[0-8] int j:棋盘横坐标[0-9] 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2004-9-26 时 间:10:49:56

在文件 ChineseChessView.cpp1069 行定义.

◆ LoadChessGame()

int CChineseChessView::LoadChessGame ( LPCTSTR  pszFile)
virtual

在文件 ChineseChessView.cpp282 行定义.

◆ onCleanPrompt()

int CChineseChessView::onCleanPrompt ( int  i,
int  j 
)
protectedvirtual

清除提示框

实现了 CChineseChess.

在文件 ChineseChessView.cpp251 行定义.

◆ OnCreate()

int CChineseChessView::OnCreate ( LPCREATESTRUCT  lpCreateStruct)
protected

在文件 ChineseChessView.cpp151 行定义.

◆ OnDraw()

void CChineseChessView::OnDraw ( CDC *  pDC)
protectedvirtual

在文件 ChineseChessView.cpp191 行定义.

◆ onDrawPrompt()

int CChineseChessView::onDrawPrompt ( int  i,
int  j 
)
protectedvirtual

画提示框

实现了 CChineseChess.

在文件 ChineseChessView.cpp257 行定义.

◆ onGoChess()

int CChineseChessView::onGoChess ( int  i,
int  j,
CPiece::ENUM_QiZi  chess 
)
protectedvirtual

走棋事件

实现了 CChineseChess.

在文件 ChineseChessView.cpp263 行定义.

◆ OnKeyUp()

void CChineseChessView::OnKeyUp ( UINT  nChar,
UINT  nRepCnt,
UINT  nFlags 
)
protected

在文件 ChineseChessView.cpp175 行定义.

◆ OnLButtonUp()

void CChineseChessView::OnLButtonUp ( UINT  nFlags,
CPoint  point 
)
protected

在文件 ChineseChessView.cpp160 行定义.

◆ onPromptMessage()

int CChineseChessView::onPromptMessage ( CGoRule::ENUM_ReturnValue  val)
protectedvirtual

提示错误消息

实现了 CChineseChess.

在文件 ChineseChessView.cpp237 行定义.

◆ onPromptSound()

int CChineseChessView::onPromptSound ( PROMPT_SOUND  sound)
protectedvirtual

实现了 CChineseChess.

在文件 ChineseChessView.cpp209 行定义.

◆ OnSize()

void CChineseChessView::OnSize ( UINT  nType,
int  cx,
int  cy 
)
protected

在文件 ChineseChessView.cpp183 行定义.

◆ PromptSound()

BOOL CChineseChessView::PromptSound ( LPCTSTR  ID = NULL)
private

函数名:PromptSound 功 能:播放声音 说 明:1、在“工程->设置->link->对象/库”中加入winmm.lib 2、加入头文件 #include <mmsystem.h> 参 数: LPCTSTR ID:声音的字符标志 返回值:如果成功返回 true,否则返回 false 作 者:康 林 版 本:1.0.0.1 日 期:2004-9-1 时 间:20:47:29

在文件 ChineseChessView.cpp541 行定义.

◆ SaveChessGame()

int CChineseChessView::SaveChessGame ( LPCTSTR  pszFile)
virtual

在文件 ChineseChessView.cpp276 行定义.

◆ SetBlackName()

int CChineseChessView::SetBlackName ( LPCTSTR  pszName)
virtual

在文件 ChineseChessView.cpp298 行定义.

◆ SetChineseChessHandler()

int CChineseChessView::SetChineseChessHandler ( CChineseChessHandler handler)

在文件 ChineseChessView.cpp270 行定义.

◆ SetQiPang()

BOOL CChineseChessView::SetQiPang ( int  width,
int  height 
)
private

函数名:SetQiPang 功 能:设置棋盘位置 参 数: int width:控件窗口宽度 int height:控件窗口高度 返回值:无 作 者:康 林 版 本:1.0.0.1 日 期:2020-5-12 时 间:11:27:12

在文件 ChineseChessView.cpp356 行定义.

◆ SetQiPangColor()

int CChineseChessView::SetQiPangColor ( COLORREF  col)

在文件 ChineseChessView.cpp320 行定义.

◆ SetRedName()

int CChineseChessView::SetRedName ( LPCTSTR  pszName)
virtual

在文件 ChineseChessView.cpp292 行定义.

◆ SetTiShiBoxColor()

int CChineseChessView::SetTiShiBoxColor ( COLORREF  col)

在文件 ChineseChessView.cpp332 行定义.

类成员变量说明

◆ m_BlackBing

CBitmap CChineseChessView::m_BlackBing
private

在文件 ChineseChessView.h124 行定义.

◆ m_BlackChe

CBitmap CChineseChessView::m_BlackChe
private

在文件 ChineseChessView.h123 行定义.

◆ m_BlackMa

CBitmap CChineseChessView::m_BlackMa
private

在文件 ChineseChessView.h122 行定义.

◆ m_BlackPao

CBitmap CChineseChessView::m_BlackPao
private

在文件 ChineseChessView.h125 行定义.

◆ m_BlackShi

CBitmap CChineseChessView::m_BlackShi
private

在文件 ChineseChessView.h120 行定义.

◆ m_BlackShuai

CBitmap CChineseChessView::m_BlackShuai
private

在文件 ChineseChessView.h119 行定义.

◆ m_BlackXiang

CBitmap CChineseChessView::m_BlackXiang
private

在文件 ChineseChessView.h121 行定义.

◆ m_Chu

CBitmap CChineseChessView::m_Chu
private

在文件 ChineseChessView.h82 行定义.

◆ m_Copyright

CBitmap CChineseChessView::m_Copyright
private

在文件 ChineseChessView.h86 行定义.

◆ m_Han

CBitmap CChineseChessView::m_Han
private

在文件 ChineseChessView.h84 行定义.

◆ m_He

CBitmap CChineseChessView::m_He
private

在文件 ChineseChessView.h83 行定义.

◆ m_Jie

CBitmap CChineseChessView::m_Jie
private

在文件 ChineseChessView.h85 行定义.

◆ m_pGoChessHandler

CChineseChessHandler* CChineseChessView::m_pGoChessHandler
private

在文件 ChineseChessView.h154 行定义.

◆ m_QiPangColor

COLORREF CChineseChessView::m_QiPangColor
private

在文件 ChineseChessView.h77 行定义.

◆ m_QiPangDistance

LONG CChineseChessView::m_QiPangDistance
private

在文件 ChineseChessView.h75 行定义.

◆ m_QiPangPicture

CBitmap CChineseChessView::m_QiPangPicture
private

在文件 ChineseChessView.h108 行定义.

◆ m_QiPangStartX

LONG CChineseChessView::m_QiPangStartX
private

在文件 ChineseChessView.h73 行定义.

◆ m_QiPangStartY

LONG CChineseChessView::m_QiPangStartY
private

在文件 ChineseChessView.h74 行定义.

◆ m_RedBing

CBitmap CChineseChessView::m_RedBing
private

在文件 ChineseChessView.h116 行定义.

◆ m_RedChe

CBitmap CChineseChessView::m_RedChe
private

在文件 ChineseChessView.h115 行定义.

◆ m_RedMa

CBitmap CChineseChessView::m_RedMa
private

在文件 ChineseChessView.h114 行定义.

◆ m_RedPao

CBitmap CChineseChessView::m_RedPao
private

在文件 ChineseChessView.h117 行定义.

◆ m_RedShi

CBitmap CChineseChessView::m_RedShi
private

在文件 ChineseChessView.h112 行定义.

◆ m_RedShuai

CBitmap CChineseChessView::m_RedShuai
private

在文件 ChineseChessView.h111 行定义.

◆ m_RedXiang

CBitmap CChineseChessView::m_RedXiang
private

在文件 ChineseChessView.h113 行定义.

◆ m_TiShiBoxColor

COLORREF CChineseChessView::m_TiShiBoxColor
private

在文件 ChineseChessView.h78 行定义.


该类的文档由以下文件生成: