vb碰壁球加程序怎么做,想在form下面加一个shape控件或是什么东西,让球碰到它就反弹,
答案:2 悬赏:0 手机版
解决时间 2021-11-08 11:16
- 提问者网友:孤山下
- 2021-11-07 11:44
vb碰壁球加程序怎么做,想在form下面加一个shape控件或是什么东西,让球碰到它就反弹,
最佳答案
- 五星知识达人网友:空山清雨
- 2021-11-07 12:53
新建一个工程,把窗体调的稍微大一点
窗体ScaleMode属性改为 3 - pixel
在窗体中央放置一个button控件,Caption=“开始”
在窗体任意位置放置一个shape控件,设置 height = 20,width=80
在窗体中央上方,再放置一个shape控件,设置 height = 50,width=50,shape = 2 - Oval
在窗体任意位置放置一个timer控件,设置Interval = 20
双击窗体任意位置,打开代码编辑器,把以下代码替换原代码,然后F5运行程序。
程序的运行效果是,点击开始按钮,小球开始加速度下落。你可以移动鼠标来控制“挡板”移动,当球碰到挡板将反弹,如果球触底则弹出对话框“你输了”,点击确定,将重新出现“开始”按钮。
Dim speed As Single
Dim cY As Single
Dim isOver As Boolean
Private Sub Command1_Click()
Command1.Visible = False
isOver = False
cY = 50
speed = 0
End Sub
Private Sub Form_Load()
isOver = True
cY = Shape2.Top
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Shape1.Top = Y - 10
Shape1.Left = X - 40
End Sub
Private Sub Timer1_Timer()
If isOver Then Exit Sub
speed = speed + 1
cY = cY + speed
Shape2.Top = cY
If cY + 50 >= Form1.Height / 15 Then
MsgBox "你输了"
isOver = True
Command1.Visible = True
Else
If checkc = True And speed > 0 Then speed = -16
End If
End Sub
Function checkc() As Boolean
If Shape2.Top + Shape2.Height < Shape1.Top Then
checkc = False
Exit Function
End If
If Shape2.Top > Shape1.Top + Shape1.Height Then
checkc = False
Exit Function
End If
If Shape2.Left + Shape2.Width < Shape1.Left Then
checkc = False
Exit Function
End If
If Shape2.Left > Shape1.Left + Shape1.Width Then
checkc = False
Exit Function
End If
checkc = True
End Function
窗体ScaleMode属性改为 3 - pixel
在窗体中央放置一个button控件,Caption=“开始”
在窗体任意位置放置一个shape控件,设置 height = 20,width=80
在窗体中央上方,再放置一个shape控件,设置 height = 50,width=50,shape = 2 - Oval
在窗体任意位置放置一个timer控件,设置Interval = 20
双击窗体任意位置,打开代码编辑器,把以下代码替换原代码,然后F5运行程序。
程序的运行效果是,点击开始按钮,小球开始加速度下落。你可以移动鼠标来控制“挡板”移动,当球碰到挡板将反弹,如果球触底则弹出对话框“你输了”,点击确定,将重新出现“开始”按钮。
Dim speed As Single
Dim cY As Single
Dim isOver As Boolean
Private Sub Command1_Click()
Command1.Visible = False
isOver = False
cY = 50
speed = 0
End Sub
Private Sub Form_Load()
isOver = True
cY = Shape2.Top
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Shape1.Top = Y - 10
Shape1.Left = X - 40
End Sub
Private Sub Timer1_Timer()
If isOver Then Exit Sub
speed = speed + 1
cY = cY + speed
Shape2.Top = cY
If cY + 50 >= Form1.Height / 15 Then
MsgBox "你输了"
isOver = True
Command1.Visible = True
Else
If checkc = True And speed > 0 Then speed = -16
End If
End Sub
Function checkc() As Boolean
If Shape2.Top + Shape2.Height < Shape1.Top Then
checkc = False
Exit Function
End If
If Shape2.Top > Shape1.Top + Shape1.Height Then
checkc = False
Exit Function
End If
If Shape2.Left + Shape2.Width < Shape1.Left Then
checkc = False
Exit Function
End If
If Shape2.Left > Shape1.Left + Shape1.Width Then
checkc = False
Exit Function
End If
checkc = True
End Function
全部回答
- 1楼网友:杯酒困英雄
- 2021-11-07 14:06
病情分析:
您好,这个是不科学的,生男孩是生女的决定方不在女方,而在于男方
指导意见:
如果男方的精子提供的是Y染色体,那么就是男性,如果是提供的X染色体,那么就是女性。目前医学界哪怕最先进的试管婴儿都不能控制胎儿的性别
您好,这个是不科学的,生男孩是生女的决定方不在女方,而在于男方
指导意见:
如果男方的精子提供的是Y染色体,那么就是男性,如果是提供的X染色体,那么就是女性。目前医学界哪怕最先进的试管婴儿都不能控制胎儿的性别
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯