当前课程知识点:数据库技术与程序设计 > 综合练习题库 > 综合练习题库 > 技术分享贴:石头剪刀布
大家好,今天要和大家来做一个小游戏的示例。
我们先来看一下运行效果
没错,今天我们要做一个猜拳小游戏。
那下去我们来看一下怎么来制作这个小游戏
一、创建窗体
参照下面的表格与图表,在窗体上添加对的控件,可以适当的调整一下
控件 | 控件名称 | 属性 |
标签 | 标题改成“你出:” | |
标签 | 标题改成“电脑出:” | |
标签 | lblUser | |
标签 | lblComputer | |
标签 | lblResult | 标题改成“结果” |
按钮 | btnST | 标题改成“石头” |
按钮 | btnJD | 标题改成“剪刀” |
按钮 | btnB | 标题改成“布” |
二、添加代码
我们来写几个类,通过调用类来实现我们需要的功能。
第一个类,用户类,用于用户出拳
Option Compare Database Option Explicit Private strFistName As String Public Property Get FistName() As String FistName = strFistName End Property Public Function ShowFist(fist As String) As String strFistName = fist Select Case fist Case "石头" ShowFist = 1 Case "剪刀" ShowFist = 2 Case "布" ShowFist = 3 End Select End Function
第二个类,电脑类,用于电脑出拳
Option Compare Database Option Explicit Private strFistName As String Public Property Get FistName() As String FistName = strFistName End Property Public Function ShowFist() As Integer Dim r As Integer Randomize r = Int((3 * Rnd) + 1) Select Case r Case 1 strFistName = "石头" Case 2 strFistName = "剪刀" Case 3 strFistName = "布" End Select ShowFist = r End Function
第三个类,裁判类,用于对出拳的结果进行判断
Option Compare Database Option Explicit Public Function IsUserWin(user As Integer, computer As Integer) As String If user - computer = 0 Then IsUserWin = "平局~~~" ElseIf user - computer = -1 Or user - computer = 2 Then IsUserWin = "你居然赢了…" Else IsUserWin = "你真菜,你输了!!!" End If End Function
窗体中的代码
Private Sub btnB_Click() btn Me.btnB.Caption End Sub Private Sub btnJD_Click() btn Me.btnJD.Caption End Sub Private Sub btnST_Click() btn Me.btnST.Caption End Sub Private Function btn(strCaption As String) Dim ul As New UserPlay Dim userFist As Integer Dim pc As New ComputerUser Dim computerFist As Integer userFist = ul.ShowFist(strCaption) Me.lblUser.Caption = ul.FistName computerFist = pc.ShowFist() Me.lblComputer.Caption = pc.FistName Dim cp As New CaiPan Me.lblResult.Caption = cp.IsUserWin(userFist, computerFist) End Function Private Sub Form_Load() Me.lblUser.Caption = "" Me.lblComputer.Caption = "" Me.lblResult.Caption = "" End Sub
三、运行测试最后一步就是来运行测试一下
知识点
这里主要的知识点是关于类操作,在面向对象的开发中,自定义类是很常规的操作,关于类的一些特点,像封装、继承、多态大家可以去了解一下,这里我们就不太深入的讲解了。
数据来源:公众号Access开发
-知识点拼图+问题求解流程+软件工程开发教学流程——写给翻转课堂开课教师
-技术分享贴续篇:怎样用窗体显示一条记录存储的多张OLE图像文件?
-技术分享贴:复杂的SQL自体连接和嵌套查询,涨粉最多的用户ID和涨粉数
-往届竞赛获奖作品展示
-1.1 数据与数据管理
--【拓展阅读】到底什么是IT(Information Technology)
-1.2 DBS=DB+DBMS
-1.3 不以六律不能正五音——数据模型
-- 课件1.3.1 数据模型
-1.4 数据库系统结构
-本章小结
--第一章小结
-第一章作业
-2.1 数据库设计流程
-2.2 概念结构设计
-2.3 逻辑结构设计
-本章小结
--第二章小结
-第二章作业
-3.1 数据库管理系统
-3.2 创建数据库
-3.3 创建数据表
-3.4 维护数据表
-本章小结
--第三章小结
-第三章作业
-4.1 基本数据类型
-4.2 常量
--4.2.1 常量
-4.3 变量和数组
--4.3.1 变量
-4.4 表达式和函数
-本章小结
--第四章小结
-第四章作业
-【讨论帖:悬赏!谁能解决Round()函数Banker’s rounding算法的bug?】
-5.1 数据检索方法
-5.2 数据库查询文件
-5.3 选择查询
-5.4 参数查询
-5.5 操作查询
-本章小结
--第五章小结
-第5章作业
-6.1 SQL概述
-6.2 SQL数据定义语言
-6.3 SQL数据查询语言
-6.4 SQL数据操作语言
-本章小结
--第六章小结
-第6章作业
-【讨论帖:你是否听说过“自然语言检索”,你在什么地方见到过,或者使用过“自然语言检索”吗?】
-7.1 窗体设计
-7.2 报表设计
-本章小结
--第七章小结
-第七章作业
-【讨论帖:你能总结一下窗体和报表的共性和区别吗?在你的工作、学习或生活中,你都见到过哪些窗体和报表的实际应用?】
-8.1 VBA编程基础
-8.2 顺序结构及常用命令
-8.3 分支结构
--8.3.2 多路分支选择语句Select Case 和分支嵌套
--课件8.3.2 多路分支选择语句Select Case 和分支嵌套
-8.4 循环结构
-8.5 函数与过程
-8.6 VBA程序调试
-8.7 数组
-本章小结
--第八章小结
-第八章作业
-【讨论帖:我们学习了VBA面向过程的程序设计,你能结合实践,谈谈自己对算法和程序的理解吗?】
-9.1 面向对象的基本概念
-9.2 控件对象的属性和方法
-9.3 控件对象的事件
-9.4 窗体的面向对象程序设计
-【拓展阅读】【综合案例】Word中的查找与替换是如何实现的?
-本章小结
--第九章小结
-第九章作业
-【讨论贴:本章用小黄鸭类比了面向对象的各种概念,你能也用类比的方式谈谈你对面向对象的理解吗?】
-10.1 宏的基本概念
-10.2 宏的创建与调用
-10.3 数据宏
-10.4 宏的调试和转换
-【拓展阅读】【综合案例】一句代码不敲,就开发了一个航班查询系统?
-本章小结
--第十章小结
-第十章作业
-【讨论帖:王者、LOL、魔兽、DOTA……,说说你在虚拟世界里用宏(超级宏)所向披靡的故事吧!】
-11.1 数据库应用系统结构
-11.2 教学教务管理系统功能需求
-11.3 教学教务管理系统底层数据结构
-11.4 登录模块实现
-11.5 学生管理模块实现
-11.6 教学管理模块实现
-11.7 系统测试与发布
-本章小结
--第十一章小结
-课程综合设计
-综合练习题库