五子棋总结
******************************************************************************
第一步 初始界面的实现
界面的实现很类似于画板,不过也有不同之处。只讲与画板不同的地方,就是画棋盘线,画棋盘线有两种方法:
1.通过两个for循环分别用DrawLine方法画棋盘的横线和纵线。
2.直接在画布上贴图。
******************************************************************************
第二步 放子的实现
1.要判断鼠标点击的位置,选取最近的棋盘线交叉点
2.判断交叉点上是否已有棋子
3.判断此次是该放黑子还是白子
至于棋子的显示,一种方法是filloval,一种是直接贴图
******************************************************************************
第三步 判断输赢
1.建立与棋盘上棋子对应的数组,这一步其实在第二步中的2中已经实现。
2.每落一次子,就判断一次输赢。运用for循环,找它四个方向上是否能连成五子。
******************************************************************************
第四步 人机对战
1.建立一个与表示棋子的数组大小相同的数组,作为权重数组
2.遍历棋子数组,类似于判断输赢的方法为权重数组赋值
3.返回权重值最大的一个位置
********************************************************************************
简单的五子棋已经实现
******************************************************************************
第一步 初始界面的实现
界面的实现很类似于画板,不过也有不同之处。只讲与画板不同的地方,就是画棋盘线,画棋盘线有两种方法:
1.通过两个for循环分别用DrawLine方法画棋盘的横线和纵线。
2.直接在画布上贴图。
******************************************************************************
第二步 放子的实现
1.要判断鼠标点击的位置,选取最近的棋盘线交叉点
2.判断交叉点上是否已有棋子
3.判断此次是该放黑子还是白子
至于棋子的显示,一种方法是filloval,一种是直接贴图
******************************************************************************
第三步 判断输赢
1.建立与棋盘上棋子对应的数组,这一步其实在第二步中的2中已经实现。
2.每落一次子,就判断一次输赢。运用for循环,找它四个方向上是否能连成五子。
******************************************************************************
第四步 人机对战
1.建立一个与表示棋子的数组大小相同的数组,作为权重数组
2.遍历棋子数组,类似于判断输赢的方法为权重数组赋值
3.返回权重值最大的一个位置
********************************************************************************
简单的五子棋已经实现