无聊的时候都在干些啥 —— 研究一下VBA写游戏怎样

国庆假期宅家,极度无聊中,想起一个“花园”小游戏,用Excel的VBA做了一个,消磨一下时光。

说有四个小朋友在花园玩耍,一个扮将军,三个扮土匪。将军误入山中,偶遇悍匪,立马派出斥候搬兵。但是将军要与悍匪斗过N个回合,才能等来援军。

每个回合,将军可以往上下左右四个方向(如果没有障碍)任意选一个方向走一步,土匪选择三个中的一个,也往没有障碍的方向走一步。当将军无路可走的时候,游戏结束。

如果你是将军,能坚持到援军到达吗?

说是要有代码才更有价值,就摘抄一段动态绑定事件的代码段:

    ' 动态添加的控件,可以这样绑定Click事件?
    For x = 0 To Garden.Width * Garden.Height - 1
        Set Beta(x) = New CBeta
        Set Halo(x) = Controls.Add("Forms.Label.1", "L" & Right(1000 + x, 3), True)
        With Halo(x)
            .Left = 10 + (x Mod Garden.Width) * Size
            .Top = 10 + (x \ Garden.Width) * Size
            .Width = Size - 1
            .Height = Size - 1
            .Caption = ""
            .BackColor = IIf(Garden.Value(x) < 0, BLUE, LIGHT_ORANGE)
            .ForeColor = ORANGE
            .Font.Name = "Courier New"
        End With
        Beta(x).SetID x, Me
        Set Beta(x).OnClick = Halo(x) ' 关键看这里
    Next

似乎这里不能发RAR文档。

资源:https://download.csdn.net/download/amoyman/86762802

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值