游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2287|回复: 5

VB设计围棋用的ActiveX控件和资料

[复制链接]

130

主题

2714

帖子

2714

积分

金牌会员

Rank: 6Rank: 6

积分
2714
发表于 2005-9-30 11:27:00 | 显示全部楼层 |阅读模式
这个不是我做的,也没用过,希望对想做围棋程序的朋友有用:

完全免费的ActiveX控件,此控件用于围棋对弈程序的开发,可方便的开发出网
络围棋对弈程序。(需中文VB5.0 SP3支持)
1、概要
   通过qzNodes集合和qzNode对象可方便的操纵棋盘上的棋子,此版本只提供了将棋盘上所有的死子提掉的
功能,下一版本将增加计算目数及判断真、假眼等功能。
   本控件对于想开发网络围棋对弈程序的朋友们提供了很大的便利。
2、控件说明:
   1)qzNode对象和qzNodes集合:
     一个qzNode对象代表棋盘上的一个棋子。
     一个qzNodes集合包含一个或多个qzNode对象。
     qzNode对象的属性如下:
           iType         返回和设置qzNode对象的类型
                        True=黑子
                        False=白子
           NodeLeft        返回指定棋子(qzNode对象)左方的棋子(qzNode对象)。
                        无棋子(qzNode对象)则返回Nothing。
           NodeRight        返回指定棋子(qzNode对象)右方的棋子(qzNode对象)。
                        无棋子(qzNode对象)则返回Nothing。
           NodeTop        返回指定棋子(qzNode对象)上方的棋子(qzNode对象)。
                        无棋子(qzNode对象)则返回Nothing。
           NodeBottom        返回指定棋子(qzNode对象)下方方的棋子(qzNode对象)。
                        无棋子(qzNode对象)则返回Nothing。
           X                返回棋子(qzNode对象)的X坐标(范围1~19)。
           Y                返回棋子(qzNode对象)的Y坐标(范围1~19)。
     qzNodes集合方法如下:
           Add(iType as Boolean,X as Integer,Y as Integer)        添加(qzNode对象)
                iType=类型,(X,Y)棋盘坐标(1 To 19,1 To 19)
           Count                                                返回集合中qzNode的数目
           Item(X As Integer,Y as Integer)                        返回集合中指定的qzNode对象。
                X,Y同上
           ReMove(X As Integer,Y As Integer)                        删除集合中指定的qzNode对象。

    2)WeiQi对象的主要属性、方法和事件:
           BackColor        (读写属性)返回和设置棋盘的背景色。
           Clear        (方法)清除棋盘上的所有棋子及删除qzNodes集合中的所有qzNode对象。
                        WeiQi.qzNodes.Count=0
           ColorBlack   (读写属性)返回或设置黑子的颜色。
           ColorWhite   (读写属性)返回或设置白子的颜色。
           CountBlack   (只读属性)返回棋盘上黑子的实际数目。
           CountWhilt   (只读属性)返回棋盘上白子的实际数目。
           ForeStall        (只读属性)返回该黑方或白方落子(True为该黑方落子,False为该白方落子)
           GetType(X as Integer,Y as Integer) As Integer  (方法)返回(X,Y)处的是否有子(0=None,
                                                                1=Black,2=White)
           KillSub        (方法)将棋盘中没有气的棋子提走,同时将qzNodes集合中相关的qzNode对象删除。
              LineColor    (读写属性)返回或设置棋盘中线条的颜色。
           MouseDown        事件
                Event MouseDown(Button As Integer, Shift As Integer, X As Integer, _
                        Y As Integer, QzType As Integer)
                        当鼠标按下时产生事件:(X,Y)棋盘位置,QzType返回(X,Y)处是否有子
                                (0=None,1=Blackm,2=White)
           MouseUP        事件
                Event MouseUP(Button As Integer, Shift As Integer, X As Integer, _
                        Y As Integer, QzType As Integer)
                        当鼠标松开时产生事件:(X,Y)棋盘位置,QzType返回(X,Y)处是否有子
                                (0=None,1=Blackm,2=White)
          qzNodes        (只读属性)返回棋盘中棋子(qzNode对象)的集合
          ReFresh        (方法)刷新棋盘(如:调用qzNodes.Remove删除qzNode对象后要用ReFresh刷新)。

sf_2005930112635.rar

14.81 KB, 下载次数:

22

主题

371

帖子

387

积分

中级会员

Rank: 3Rank: 3

积分
387
发表于 2005-9-30 11:44:00 | 显示全部楼层

Re:VB设计围棋用的ActiveX控件和资料

控件好做,AI难啊,所以只是“网络对弈围棋”,汗

130

主题

2714

帖子

2714

积分

金牌会员

Rank: 6Rank: 6

积分
2714
 楼主| 发表于 2005-9-30 12:04:00 | 显示全部楼层

Re:VB设计围棋用的ActiveX控件和资料

这个是提子程序,因为我自己做不到,至于AI就更难了。

3

主题

107

帖子

112

积分

注册会员

Rank: 2

积分
112
发表于 2005-10-1 00:23:00 | 显示全部楼层

Re:VB设计围棋用的ActiveX控件和资料

围棋的AI是公认难做的~

2

主题

17

帖子

17

积分

新手上路

Rank: 1

积分
17
发表于 2005-10-9 23:19:00 | 显示全部楼层

Re:VB设计围棋用的ActiveX控件和资料

要有棋谱数据库和学习型模型

1

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
发表于 2006-5-1 15:55:00 | 显示全部楼层

Re:VB设计围棋用的ActiveX控件和资料

楼主,能发份源码给我吗?我刚刚学游戏编程的,呵呵
qunhuaqing@163.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-24 10:01

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表