五子棋怎么制作 在Excel中制作五子棋游戏
随着科技的发展,游戏已经融入到我们的日常生活中,而五子棋作为一种传统的策略类游戏,一直备受人们喜爱。在繁忙的工作和生活中,我们常常无法抽出时间去娱乐。如果我们能够在Excel中制作出五子棋游戏,就可以随时随地享受游戏的乐趣了。今天我们就来一下如何在Excel中制作五子棋游戏。
在Excel中制作五子棋游戏
方法如下:
1.首先在excel表格模式时,画两个单选框将一个按钮。然后参照我的另外一篇百度经验”怎样通过excel计算出九宫格“,双击按钮进入到代码模式。
2.图中红色宽中主要讲述对棋盘的设置;

3.图中红色所讲述的是,在表1被激活时,单选框1被选中;

4.图中红色所讲述的是,若单选框1被选中时,鼠标所选的单元格被赋值为实心圆,赋值后,更换为单选框2被选中;若当单选框2被选中时,鼠标所选的单元格被赋值为空心圆,赋值后,更换为单选框1被选中。到此时,五子棋的下子程序已经完成了,剩余判断胜负的程序了。

5.我把判断胜负的程序,分为了4部分;
判断竖直胜利部分;
判断水平胜利部分;
判断左倾斜胜利部分;
判断右倾斜胜利部分;

6.每一部分原理都类似,这里只讲述竖直胜利的情况。
判断竖直胜负的原理:当黑子方走完最后一颗实心黑子时,只要判断以该颗棋子为中心的9颗竖直排列的棋子中。是否有5颗连续为实心黑子,若有,则胜利;
7.所有程序:
Private Sub CommandButton1_Click()
Range("E5:AD30").ClearContents
With Range("E5:AD30").Font
.Name = "宋体"
.FontStyle = "bold"
.Size = 12
End With
With ActiveSheet.Cells
.ColumnWidth = 2.5
.RowHeight = 17.5
End With
End Sub
Private Sub Worksheet_Activate()
OptionButton1.Value = True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'五子棋部分
If ActiveCell.Row < 31 And ActiveCell.Row > 4 And ActiveCell.Column < 31 And ActiveCell.Column > 4 Then
If OptionButton1.Value = True And ActiveCell.Value = "" Then
ActiveCell.Value = "●"
OptionButton2.Value = True
ElseIf OptionButton2.Value = True And ActiveCell.Value = "" Then
ActiveCell.Value = "○"
OptionButton1.Value = True
End If
a = 0
'判断竖胜部分
For i = -4 To 4
If Sheet1.Cells(ActiveCell.Row, ActiveCell.Column - i) = ActiveCell.Value Then
a = a + 1
Else
a = 0
End If
If a = 5 Then
If ActiveCell.Value = "●" Then
MsgBox "黑方胜"
Range("E5:AD30").ClearContents
Else
MsgBox "白方胜"
Range("E5:AD30").ClearContents
End If
Exit For
End If
Next
'判断横胜部分
For i = -4 To 4
If Sheet1.Cells(ActiveCell.Row - i, ActiveCell.Column) = ActiveCell.Value Then
a = a + 1
Else
a = 0
End If
If a = 5 Then
If ActiveCell.Value = "●" Then
MsgBox "黑方胜"
Range("E5:AD30").ClearContents
Else
MsgBox "白方胜"
Range("E5:AD30").ClearContents
End If
Exit For
End If
Next
'判断左斜胜部分
For i = -4 To 4
If Sheet1.Cells(ActiveCell.Row - i, ActiveCell.Column - i) = ActiveCell.Value Then
a = a + 1
Else
a = 0
End If
If a = 5 Then
If ActiveCell.Value = "●" Then
MsgBox "黑方胜"
Range("E5:AD30").ClearContents
Else
MsgBox "白方胜"
Range("E5:AD30").ClearContents
End If
Exit For
End If
Next
'判断右斜胜部分
For i = -4 To 4
If Sheet1.Cells(ActiveCell.Row + i, ActiveCell.Column - i) = ActiveCell.Value Then
a = a + 1
Else
a = 0
End If
If a = 5 Then
If ActiveCell.Value = "●" Then
MsgBox "黑方胜"
Range("E5:AD30").ClearContents
Else
MsgBox "白方胜"
Range("E5:AD30").ClearContents
End If
Exit For
End If
Next
End If
End Sub
7相关内容未经许可获取自百度经验本站在此所带来关于五子棋怎么制作的内容就到这了,如果看完之后能够对你有所帮助的话,无疑这将是最为有意义的事情啦!