2022年vb小游戏代码 .pdf
《2022年vb小游戏代码 .pdf》由会员分享,可在线阅读,更多相关《2022年vb小游戏代码 .pdf(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 数字排序小游戏Option Explicit Dim Label2X As Integer 记录标签控件数组中要移动的标签控件左上角X 的位置Dim Label2Y As Integer 记录标签控件数组中要移动的标签控件左上角Y 的位置让标签数组中的每个标签控件上显示的数字是随机的,无重复的Private Sub Init() Randomize Dim a(7) As Integer Dim i As Integer, k As Integer Label1.Caption = For i = 0 To 7 a(i) = i Next For i = 0 To 7 k = Int(Rn
2、d * 8) Do While a(k) = -1 a(k)=-1 表示该数组元素对应的数字已经被使用过了k = Int(Rnd * 8) 重新生成 k 的值,直到a(k)的值不等于 -1 Loop Label2(i).Caption = Trim(Str(a(k) a(k) = -1 a(k)的值已经使用了,不能再用,重新赋值为-1 与其他的元素值相区别名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 13 页 - - - - - - - - - 2 Next i End
3、 Sub Private Sub Command1_Click() Dim x As Integer, y As Integer Dim z As Integer Init Picture1.Enabled = True 让空白标签Label1 出现的位置随机Randomize 记录下空白标签Label1 的位置x = Label1.Left y = Label1.Top z = Int(Rnd * 8) 将空白标签Label1 和标签控件数组任一控件交换位置Label1.Move Label2(z).Left, Label2(z).Top Label2(z).Move x, y Comman
4、d1.Enabled = False End Sub Private Sub Command2_Click() End End Sub Private Sub Form_Load() Dim i As Integer Picture1.Enabled = False 在标签中显示游戏说明信息Label3.Caption = 如左图所示,将数字按0-7 顺 & vbCrLf & vbCrLf & 序依次排列,即取得胜利。 在标签中显示排列规则后的数字顺序Label1.Caption = 0 For i = 0 To 6 Label2(i).Caption = i + 1 Next End Sub
5、 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 13 页 - - - - - - - - - 3 Private Sub Label1_DragDrop(Source As Control, x As Single, y As Single) Dim Label1X As Integer 记录空白控件Label1 左上角 X 的位置Dim Label1Y As Integer 记录空白控件Label1 左上角 Y 的位置Dim flag(3) As Boolean 获取
6、空白控件Label1 的位置Label1X = Label1.Left Label1Y = Label1.Top 要移动的控件位于空白控件Label1 的正左侧flag(0) = (Label2X = Label1X - Source.Width) And (Label2Y = Label1Y) 要移动的控件位于空白控件Label1 的正右侧flag(1) = (Label2X = Label1X + Source.Width) And (Label2Y = Label1Y) 要移动的控件位于空白控件Label1 的正上方flag(2) = (Label2X = Label1X) And (L
7、abel2Y = Label1Y - Source.Height) 要移动的控件位于空白控件Label1 的正下方flag(3) = (Label2X = Label1X) And (Label2Y = Label1Y + Source.Height) If flag(0) Or flag(1) Or flag(2) Or flag(3) Then Label1.Move Label2X, Label2Y Source.Move Label1X, Label1Y End If Win End Sub Private Sub Label2_MouseDown(Index As Integer,
8、Button As Integer, Shift As Integer, x As Single, y As Single) If Button = vbLeftButton Then 如果按下鼠标左键记录下要拖动控件的位置Label2X = Label2(Index).Left Label2Y = Label2(Index).Top Label2(Index).Drag 1 启动拖动操作End If End Sub Private Sub Label2_MouseUp(Index As Integer, Button As Integer, Shift As Integer, x As Si
9、ngle, y As Single) Label2(Index).Drag 2 结束拖动操作名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 13 页 - - - - - - - - - 4 End Sub Private Sub Win() Dim winner As Integer Dim i As Integer Dim answer As Integer 对于给定的标签控件数组中的任一标签控件,可以落在符合要求(对应位置应显示对应数字)的八个位置中的任一位置利用循环
10、语句对标签控件数组中的每个标签控件进行检查,如果其落在某一符号要求的位置,则变量 winner 的值加 1,如果所有标签控件都落在符号要求的位置,则变量winner 的值应为 8 For i = 0 To 7 If Label2(i).Left = 0 And Label2(i).Top = 0 And _ Label2(i).Caption = 0 Then winner = winner + 1 ElseIf Label2(i).Left = Label2(i).Width And Label2(i).Top = 0 And _ Label2(i).Caption = 1 Then win
11、ner = winner + 1 ElseIf Label2(i).Left = 2 * Label2(i).Width And Label2(i).Top = 0 And _ Label2(i).Caption = 2 Then winner = winner + 1 ElseIf Label2(i).Left = 0 And Label2(i).Top = Label2(i).Height And _ Label2(i).Caption = 3 Then winner = winner + 1 ElseIf Label2(i).Left = Label2(i).Width And Labe
12、l2(i).Top = Label2(i).Height And _ Label2(i).Caption = 4 Then winner = winner + 1 ElseIf Label2(i).Left = 2 * Label2(i).Width And Label2(i).Top = Label2(i).Height And _ Label2(i).Caption = 5 Then winner = winner + 1 ElseIf Label2(i).Left = 0 And Label2(i).Top = 2 * Label2(i).Height And _ Label2(i).C
13、aption = 6 Then winner = winner + 1 ElseIf Label2(i).Left = Label2(i).Width And Label2(i).Top = 2 * Label2(i).Height And _ Label2(i).Caption = 7 Then winner = winner + 1 End If Next i If winner = 8 Then MsgBox 恭喜您,胜利了!, 0 + 64 + 0, 提示 Picture1.Enabled = False answer = MsgBox( 还继续吗? , 4 + 32 + 0, 提示
14、) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 13 页 - - - - - - - - - 5 If answer = vbYes Then Command1.Enabled = True Else End End If End If End Sub 弹球游戏Dim x_step As Integer Dim y_step As Integer Private Sub command1_Click() If Timer1.Enabled = True Then Ti
15、mer1.Enabled = False Else Timer1.Enabled = True End If If command1.Caption = 暂停 Then command1.Caption = 继续 Else command1.Caption = 暂停 End If End Sub 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 13 页 - - - - - - - - - 6 Private Sub Form_Load() x_step = 200 y_s
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年vb小游戏代码 2022 vb 小游戏 代码
限制150内