1 属性 1.1 只读属性 1.1.1 AuthorDeclare 类型:String 说明:返回作者申明和版本信息 1.1.2 NextWhite 类型:Boolean 说明:返回下一步棋信息(如果下步棋该白棋走为真) 1.1.3 WhiteTiNumber 类型:integer 说明:返回白棋提到的黑棋数量 1.1.4 BlackTiNumber 类型:integer 说明:返回黑棋提掉的白棋数量 1.1.5 GlobeErrMessage 类型:String 说明:返回最后一个错误的解释 1.1.6 Record_Finger 类型:integer 说明:返回当前棋谱指针(也是当前棋谱显示长度) 1.1.7 Record_LastFinger 类型:integer 说明:返回棋谱的最长纪录(如果没有回退,此数值将与Record_Finger相同) 1.1.8 Record_Long 类型:integer 说明:返回棋谱的长度 注意:只是棋谱数组的长度!不是已经下了的棋谱长度!其实这个属性没有什么用处,因为你无法手动增加它! 1.1.9 Record_Hand(ByVal i As Integer) 类型:byte 说明:返回第i步棋谱是黑棋还是白棋 注意:其实除了让子棋,奇数就是黑棋,偶数就是白棋。参见后面的常数表 1.1.10 Record_X(ByVal i As Integer) 类型:byte 说明:返回第i步棋所在的横坐标(应该是:1-19,写的时间有点长了> _ <!) 1.1.11 Record_Y(ByVal i As Integer) 类型:byte 说明:返回第i步棋所在的纵坐标(应该是:1-19,写的时间有点长了> _ <!) 1.1.12 Record_Dead(ByVal i As Integer) 类型:Boolean 说明:返回第i步是的死棋信息(如果此步棋提了对方的棋为真) 1.1.13 Record_Ti(ByVal i As Integer) 类型:byte 说明:返回第i步是的提子信息(如果此步棋提了对方的棋,纪录是提了什么方向的棋。你不必管它的含义!) 注意:如果你要保存棋谱,请纪录5个Record_(i as integer)属性!在读取棋谱时必须使用他们! 1.1.14 ReturnStatus 类型:byte 说明:返回棋盘状态(参见常数表,分别为比赛状态,打谱状态和编辑状态) 注意:状态将影响到单击鼠标左键会作出的反应 比赛状态:如果是轮到matchwhite所指的白棋或黑棋时,左键才是走棋 打谱状态:按照预先装入的棋谱反应,左键只是前进一步 编辑状态:单击左键纪录一步棋,黑白棋轮流走! 1.2 可设置属性 1.2.1 QiPanBack 类型:Byte 说明:棋盘背景样式 0:使用纯色作为棋盘背景,纯色由BackGroudColor提供 一下使用图片,请务必设置BackPictureImage属性 1:居中 2:平铺 3:拉伸 4:放大 其他数值报错! 1.2.2 BackPictureImage 类型:Bitmap 说明:背景图片,只有Qipanback为1,2,3,4数值时才有用 1.2.3 ShowNumber 类型:Boolean 说明:是否显示每步棋的手数 1.2.4 ShowUpHand 类型:boolean 说明:是否使用菱形框标示出上一步的位置,默认为True 1.2.5 BackGroudColor 类型:Color 说明:棋盘的背景颜色,只有QiPanBack为0时才有用! 1.2.6 PenDrawQiPan 类型:pen 说明:画棋盘线的笔,可以设置宽度,颜色和线形……,只要是pen能设置的东西都行。 1.2.7 PenDrawOther 类型:pen 说明:画各种显示线条,就是上一步提示,寻找手数,当前位置的画笔 1.2.8 StarBrush 类型:SolidBrush 说明:画星位的笔刷 1.2.9 WordFont 类型:font 说明:文字字体,包括手数和边框数值 1.2.10 MatchWhite 类型:boolean 说明:点击左键走白棋还是黑棋,true为白棋,只有在比赛状态时才有用 1.2.11 WarningNumber 类型:integer 说明:限制数量,如果回退超过这个数值,再走棋会提问!默认数值为5 1.2.12 WhiteIcon 类型:icon 说明:显示的白棋图标,只能是图标 1.2.13 BlackIcon 类型:icon 说明:显示的白棋图标,只能是图标 2 接口 2.1 FindShouNumber(ByVal i As Integer) 返回值:byte 说明:寻找第i手棋,找到后会在棋盘上用方框显示出来直到点击了鼠标的左键,返回数值见常数表 2.2 TranslateErrCodeToExplain(ByVal code As Byte) 返回值: String 说明:如名字所说……,返回一个错误代码的解释 2.3 UpDataBack 返回值:无 说明:更新棋盘 2.4 BackOneStep 返回值:boolean 说明:回退一步,真值成功,假值出现错误,通过GlobeErrMessage属性能得到错误信息,一般是回退到底的错误! 2.5 SetQiPanInit(ByRef QiPan(,) As Byte) 返回值:boolean 说明:将QiPan(18,18)数组复制到棋盘中去,这个函数只能在棋谱没有纪录的时候使用,否则回出错,会设置GlobeErrMessage 注意:如果数组没有19,19个大会报错,超过的部分将忽略!其中数值只能是0,WHITE,BLACK。(参见参数表) 用于让子棋,在棋开始前在棋盘上摆棋。 2.6 GoStep(ByVal x As Byte, ByVal y As Byte) 返回值:boolean 说明:走一步棋接口,真是成功,假是出错(比如不能立即回填被提一子),会设置GlobeErrMessage 如果是虚手请输入虚手常数 注意:x 为横坐标,y为纵坐标,只能是1-19数值,注意,此函数只能在棋盘状态为非打谱状态下才有用! 如果用在比赛状态,本函数不检查走棋的顺序! 2.7 SetStauts(ByVal i As Byte, [ByRef Hand() As Byte] = Nothing, [ByRef ix() As Byte] = Nothing, [ByRef iy() As Byte] = Nothing, [ByRef dead()] As Boolean = Nothing, [ByRef ReTi()] As Byte = Nothing) 返回值:boolean 说明:设置棋盘状态,真是成功,假是出错,会设置GlobeErrMessage i为状态常数(参见常数表,如果输入非常数表数值会出错!) 其他参数只在i设置为DAPU时有用!后续5个数组的长度必须相等并大于0,否则出错! 这5个参数是棋谱必要信息,与5个Record_(i as integer)属性相对应!如果你要保存棋谱,请务必注意! 注意:此函数会重置棋谱和棋盘!所有信息均将丢失,并且本函数不会发出任何提问!请一定要注意!!!! 3 相关常数 3.1 棋谱常数 Const XUSHOU As Byte = 21 '虚手 Const BLACK As Byte = 111 '黑棋 Const WHITE As Byte = 100 '白棋 3.2 状态常数 Const MATHING As Byte = 11 ' 比赛状态 Const DAPU As Byte = 22 ' 打谱状态 Const WRITEING As Byte = 33 '编辑状态 4 外部事件 没有增加特殊的外部事件,当单击鼠标时,先进行棋盘操作,在引发OnMouseUp事件!主要的编程接口全在这个事件 注意,当你处理鼠标事件时,整个棋谱已经完成更新和显示等一切工作或因为错误或限制没有对棋谱进行处理, 你可以对比单击鼠标前的Record_Finger属性得到棋谱是否改变(也就是是否成果走棋的信息!) 对比事件返回的按键属性和棋谱状态属性确定是那种事件发生(是走了一步棋,还是回退了一步,还是做了一步虚手,还是前进了一步……) 如果有人下来用,并且找到了bug,请一定要告诉我!谢谢 ! |
|