社区应用 最新帖子 精华区 社区服务 会员列表 统计排行
  • 1437阅读
  • 2回复

vb新手进 用VB的设计一个最简单的闹钟

楼层直达
级别: 技术专家
发帖
1106
飞翔币
335
威望
1063
飞扬币
4308
信誉值
0
— 本帖被 霸王硬上弓 从 『研究小组』 移动到本区(2010-08-19) —
这里要用到VB提供的一个部件WindowsMediaPlayer,在 “工程----部件-”里面,在下拉列表找到WindowsMediaPlayer ,勾上。
新建一工程,窗体名AlarmForm.
放置一个Timer,名字为Timer1。放置一个Label,名字为lblTime ,放置一个WindowsMediaPlayer,名字为 WindowsMediaPlayer1,
代码如下:
Option Explicit
Dim AlarmTime
Const conMinimized = 1

Private Sub Form_Click()
AlarmTime = InputBox("输入启动闹钟的时间", "VB 闹钟", AlarmTime)
If AlarmTime = "" Then Exit Sub
If Not IsDate(AlarmTime) Then
MsgBox "您输入的时间无效。"
Else ' 从 InputBox 返回的字符串使有效时间,
AlarmTime = CDate(AlarmTime) ' 将它作为一个日期/时间值存储在 AlarmTime 中。
End If
End Sub
Private Sub Form_Load()
AlarmTime = ""
End Sub
Private Sub Form_Resize()
If WindowState = conMinimized Then ' 如果窗体被最小化, 在标题处显示时间。
SetCaptionTime
Else
Caption = "闹钟"
End If
End Sub
Private Sub SetCaptionTime()
Caption = Format(Time, "Medium Time") ' 使用中等时间格式显示时间。

End Sub
Private Sub Timer1_Timer()
Static AlarmSounded As Integer
If lblTime.Caption <> CStr(Time) Then
' 当前秒数与显示秒数不同。
If Time >= AlarmTime And Not AlarmSounded Then
MsgBox "启动闹钟在 " & Time
AlarmSounded = True
WindowsMediaPlayer1.URL = "H:\VB设计\gmidi01.mid" ' 这里是声音文件的路径
ElseIf Time < AlarmTime Then
AlarmSounded = False
End If
If WindowState = conMinimized Then
' 如果处于最小化状态, 每分钟都需更新窗体标题。
If Minute(CDate(Caption)) <> Minute(Time) Then SetCaptionTime
Else
' 否则每秒钟对标签的标题进行更新。
lblTime.Caption = Time
End If
End If
End Sub
附件: 源程序.rar (8 K) 下载次数:3
 
进入延林的网站 ---- 网络工程师,计算机等级考试,光盘制作,网站建设,电脑进阶......
级别: 管理员
发帖
3549
飞翔币
5005
威望
64392
飞扬币
51613
信誉值
815
只看该作者 1 发表于: 2006-12-18
tyl9527
编程可以的,到时帮我设计个小软件吧?
级别: 技术专家
发帖
1106
飞翔币
335
威望
1063
飞扬币
4308
信誉值
0
只看该作者 2 发表于: 2006-12-18
呵呵 好啊 。绝对不收费!:)Y126