VB数字时钟
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《多媒体软件设计技术》
实验报告书
课程名称:多媒体软件设计技术
班级:自动化2009级1班
学号:200904134028
姓名:汪胜
指导教师:杨岚
二○一一年四月
一.实验的目的
1.使学生通过试验,掌握界面的设计方法,掌握常用控件的属性、事件、方法,理解事件驱动的概念。
2.掌握图形、图像程序设计方法;
3.掌握多媒体音频、视频程序的设计方法;
二.实验项目
实验一常用控件与界面、菜单设计
1、实验目的
通过本实验,要求掌握常用控件的属性、事件、方法,理解事件驱动的概念。掌握界面的基本设计方法,掌握下拉式菜单的设计方法
2、实验内容
实验1:指法练习
1)界面设计
2)运行界面
3)属性设置:
4)程序源代码
1.判断是否击中窗体上的字母:
Private Sub Form_KeyPress(KeyAscii As Integer) '当按下键时,判断是否击中,并做相应处理
Dim temp, height As Integer
height = -1 '记录击中字母的位置
temp = -1 '记录击中字母的下标
For i = 0 To Label1.Count - 1
If Label1.Item(i).Caption = Chr(KeyAscii) Then '循环用于判断是否击中字母,记录被击中字母的高度下标If height < Label1.Item(i).Top Then
temp = i
height = Label1.Item(i).Top
End If
End If
Next
If temp > -1 Then '表示击中字母,(temp的值为0~9>-1)
Label1.Item(temp).Top = -500
score = score + 1
Label3.Caption = score
End If
If KeyAscii = 27 Then '若按下ESc键,显示成绩,并提示是否退出
If MsgBox("你的得分:" & score & "分" + Chr(13) + Chr(10) + "真的要退出吗?", vbYesNo, "成绩") = vbYes Then End
End If
End Sub
2.窗体加栽
Private Sub Form_Load()
Dim i As Integer
Dim j As Single
score = 0
Label3.Caption = 0 '初始化个标签的位置和显示字符
For j = 0 To Label1.Count - 1 'Label1.Count:统计控件数组共有多少个元素
Label1(j).Top = 0 - j * 380 'Top属性:控件最顶端到容器(本例为窗体)的距离Randomize '初始化随机函数
i = Int((122 - 97 + 1) * Rnd + 97) 'Int():取整函数;Rnd():随机函数;表示:取a~z的字符
Label1.Item(j).Caption = Chr(i) 'Label1.Item(j):控件数组的第j个元素;Chr(i):字符转换函数
Next j
End Sub
3.定时器控件Timer1:控制字符的下落速度,用户的打字成绩每增加10分,字符的下落速度就加快,如果字符下落到一定程度,结束程序的运行。
Private Sub Timer1_Timer()
Dim i As Integer
For i = 0 To Label1.Count - 1
If score > 10 Then
Label1.Item(i).Top = Label1.Item(i).Top + 100 + 10 * (score \ 100)
Else
Label1.Item(i).Top = Label1.Item(i).Top + 80
End If
If Label1.Item(i).Top > 15000 Then '若第i个字母与窗体顶端的距离大于10000,则程序结束MsgBox "你的得分:" & score & "分", , "成绩"
End
End If
Next
End Sub
4.定时器控件Timer2:不断检测标签控件数组中的标签,如果那个标签被击中,其高度(Top 值)初始值赋值为小于零,随机产生的字符赋给该标签的Caption属性。
Private Sub Timer2_Timer()
Dim j As Integer
For i = 0 To Label1.Count - 1
If Label1.Item(i).Top < 0 Then '第i个字谜被击中
Randomize
j = Int((122 - 97 + 1) * Rnd + 97)
Label1.Item(i).Caption = Chr(j) '随即产生第i个字母
End If
Next
End Sub
5.定义全局变量
Dim score As Integer '定义全局变量
实验2. 在实验的基础上添加菜
1)设计界面