求VB高手帮忙做一道VB题,关乎在下生死,求好心人帮忙! 做一个坦克,可以上下左右自由移动,并且可以发射
坦克大战:小圆圈(炮弹)(pd)红色居于Tk中心shape1圆边正方形(坦克大身体)(st)绿色shape2小正方形(居于st中)(pt)蓝色shape3小圆棒(炮筒)(...
坦克大战:小圆圈(炮弹)(pd) 红色 居于Tk中心 shape1
圆边正方形(坦克大身体)(st) 绿色 shape2
小正方形(居于st中)(pt) 蓝色 shape3
小圆棒(炮筒)(pg) 黑色 shape4
timer 20 展开
圆边正方形(坦克大身体)(st) 绿色 shape2
小正方形(居于st中)(pt) 蓝色 shape3
小圆棒(炮筒)(pg) 黑色 shape4
timer 20 展开
3个回答
追问
方向键直接用键盘上的,还有个Timer
追答
虽然没时间写,但给你点提示吧
1、这是按键事件:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 38 Then
..............
End Sub
KeyCode = 38 是向上的箭头
2、炮弹用circle函数【Circle(x,y),半径,color】配合timer,
3、炮筒用四个sub,先判断炮筒现在的朝向,例如按下向下键,(Tx/Ty是坦克内圈的坐标,x、y是炮筒坐标,r为坦克内圈的半径),
Public Sub Tdown(ByRef x As Single, ByRef y As Single)
Dim a As Single
Dim b As Single
a = Form1.Shape3.Height
b = Form1.Shape3.Width
If a > b Then
If y > Ty Then
y = y + 10
Else
y = y + 1 + 2 * r + a
End If
Else
If x < Tx Then
x = x + a + r - 0.5 * b
y = y + 1 + 0.5 * b + r
Else
x = x - r - 0.5 * b
y = y + 0.5 * a + r
End If
Form1.Shape3.Width = 255
Form1.Shape3.Height = 855
End If
End Sub
这是炮筒向下的代码,其他方向的大同小异
37 LEFT ARROW 键
38 UP ARROW 键
39 RIGHT ARROW 键
40 DOWN ARROW 键
希望我的回答对你有所帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
哎…… 准备后事吧~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
看邮箱
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询