admin管理员组

文章数量:1609966

天天写报表工具,感觉Excel越用越烦,看着Sheet里的格子,我突然想到了以前他们说用VBA做游戏的想法。

Excel工作表里的格子,天生就适合用来做俄罗斯方块、贪吃蛇这样的小游戏啊,想到了就做,于是有了以下。

先说一下实现方式。

蛇的运动通过user32.dll的SetTimer实现,蛇的组成即一个一维数组,数组存放自定义类型,包含横纵坐标。

蛇、食物通过填充Excel单元格实现。

下面贴VBA的源码。

模块:

Public Direction As Integer '蛇的方向 1左2上3右4下
Public SnakeBody(1 To 676) As PosSnake
Public SnakeBodyCount As Integer
Public PosX '横坐标集合
Public lTimerID As Long
Public Food As PosSnake

#If VBA7 And Win64 Then
Private Declare PtrSafe Function SetTimer Lib "user32.dll" (ByVal hwnd As Long, ByVal nIDEvent As Long, _
ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long
Private Declare PtrSafe Function KillTimer Lib "user32.dll" (ByVal hwnd As Long, ByVal nIDEvent As Long

本文标签: 贪吃蛇Excel