用VB设计一个定时闹钟程序

合集下载

vb时钟设计课程设计

vb时钟设计课程设计

vb时钟设计课程设计一、课程目标知识目标:1. 学生能理解VB编程中时间相关的数据类型和函数。

2. 学生掌握使用Visual Basic设计一个简单时钟界面和实现时间显示功能的基本步骤。

3. 学生能够解释时钟程序中涉及的时间概念,如时、分、秒及它们之间的关系。

技能目标:1. 学生能够运用VB语言编写程序,实现实时时间显示功能。

2. 学生能够通过编程实践,培养解决问题的能力和逻辑思维能力。

3. 学生能够对程序进行调试和修改,提高程序优化和故障排查的能力。

情感态度价值观目标:1. 学生通过动手实践,培养对计算机编程的兴趣和热情。

2. 学生在团队协作中,学会相互沟通与协作,培养集体荣誉感。

3. 学生通过编程创作,体会科技改变生活的实际应用,激发创新精神。

分析课程性质、学生特点和教学要求:1. 课程性质:本课程为信息技术课程,结合Visual Basic编程,以实践操作为主。

2. 学生特点:六年级学生具备一定的计算机操作能力和逻辑思维能力,对编程有好奇心。

3. 教学要求:注重培养学生的实际操作能力,激发学生的学习兴趣,提高学生的团队合作意识。

1. 独立编写一个具有基本时间显示功能的VB时钟程序。

2. 在编程过程中,运用所学知识解决实际问题,提高逻辑思维能力。

3. 积极参与团队合作,与同伴共同完成时钟设计任务,提高沟通协作能力。

二、教学内容1. VB编程基础:- 数据类型:整数、字符串、日期时间。

- 控件使用:标签、定时器。

- 常用函数:Time、Timer。

2. 时钟设计原理:- 时间概念:时、分、秒及其进制转换。

- 时钟界面设计:布局、颜色、字体。

3. 编程实现时钟:- 时钟程序结构:初始化、时间更新、界面显示。

- 代码编写:获取系统时间、时间格式化、定时刷新。

4. 教学大纲安排:- 第一课时:回顾VB基础,介绍时钟设计原理。

- 第二课时:学习使用控件,设计时钟界面。

- 第三课时:编写代码实现时间显示功能。

VB2015编写时间小工具_倒顺计时_定时关机_闹钟等

VB2015编写时间小工具_倒顺计时_定时关机_闹钟等

PublicClass Form1Dim x, y, z AsBytePrivateSub Form1_Load(sender AsObject, e As EventArgs) HandlesMyBase.Loady = 0z = 0Dim thisDay AsInteger = Microsoft.VisualBasic.DateAndTime.Day(Now)'使用 Day 函数,可能需要用 Microsoft.VisualBasic 命名空间限定该函数,因为 System.Windows.Forms 命名空间将 Day 定义为枚举TextBox1.Text = 0TextBox2.Text = 0TextBox3.Text = 0TextBox5.Text = Year(Now)TextBox6.Text = Month(Now)TextBox7.Text = thisDayTextBox8.Text = Hour(Now)TextBox9.Text = Minute(Now)TextBox10.Text = Year(Now)TextBox11.Text = Month(Now)TextBox12.Text = thisDayTextBox13.Text = Hour(Now)TextBox14.Text = Minute(Now)EndSub'Private Sub AxMMControl1_BackClick(sender As Object, e As AxMCI.DmciEvents_BackClickEvent) Handles AxMMControl1.BackClick'使用COM有件中的:Microsoft Multimedia Contril (SP3) 音乐播放'End SubPrivateSub Button1_Click(sender AsObject, e As EventArgs) Handles Button1.ClickTimer1.Enabled = Truex = 1Button4.Enabled = FalseEndSubPrivateSub Button2_Click(sender AsObject, e As EventArgs) Handles Button2.Click'mand = "close" '使用COM有件中的:Microsoft Multimedia Contril (SP3) 音乐播放AxWindowsMediaPlayer1.close() ''使用COM有件中的Microsoft Media Player.这里是关闭播放x = 0EndSubPrivateSub Button3_Click(sender AsObject, e As EventArgs) Handles Button3.ClickOpenFileDialog1.InitialDirectory = "c:\"Dim result? AsBoolean = OpenFileDialog1.ShowDialog()If result = TrueThenTextBox4.Text = OpenFileDialog1.FileNameEndIf'AxMMControl1.FileName = TextBox4.Text '使用COM有件中的:Microsoft Multimedia Contril (SP3) 音乐播放EndSubPrivateSub Button4_Click(sender AsObject, e As EventArgs) Handles Button4.ClickTimer1.Enabled = Truex = 2Button1.Enabled = FalseEndSubPrivateSub Button5_Click(sender AsObject, e As EventArgs) Handles Button5.Clicky = 0x = 0z = 0TextBox1.Text = 0TextBox2.Text = 0TextBox3.Text = 0'mand = "close" '使用COM有件中的:Microsoft Multimedia Contril (SP3) 音乐播放 AxWindowsMediaPlayer1.close() ''使用COM有件中的Microsoft Media Player.这里是关闭播放 Button6.BackColor = Color.GoldButton6.ForeColor = Color.BlueButton6.Text = "启动"TextBox1.Enabled = TrueTextBox2.Enabled = TrueTextBox3.Enabled = TrueButton1.Enabled = TrueButton4.Enabled = TrueButton6.Enabled = TrueButton7.Enabled = TrueTextBox5.Enabled = TrueTextBox6.Enabled = TrueTextBox7.Enabled = TrueTextBox8.Enabled = TrueTextBox9.Enabled = TrueTextBox10.Enabled = TrueTextBox11.Enabled = TrueTextBox12.Enabled = TrueTextBox13.Enabled = TrueTextBox14.Enabled = TrueButton7.BackColor = Color.LimeButton7.ForeColor = Color.BlueButton7.Text = "启用"Label5.Text = "倒计时/顺计时时间:"Label5.ForeColor = Color.GreenEndSubPrivateSub Timer1_Tick(sender AsObject, e As EventArgs) Handles Timer1.TickIf x = 1 ThenTextBox1.Enabled = FalseTextBox2.Enabled = FalseTextBox3.Enabled = FalseLabel5.Text = "倒计时时间:"Label5.ForeColor = Color.RedIf TextBox1.Text <> 0 ThenTextBox1.Text -= 1EndIfIf (TextBox1.Text + TextBox2.Text + TextBox3.Text) <> 0 ThenIf TextBox1.Text = 0 ThenIf TextBox2.Text = 0 ThenTextBox1.Text = 60TextBox2.Text = 60TextBox3.Text -= 1EndIfIf TextBox2.Text <> 0 ThenTextBox1.Text = 60TextBox2.Text -= 1EndIfEndIfEndIfIf x = 1 Or x = 2 ThenIf (TextBox1.Text + TextBox2.Text + TextBox3.Text) = 0 ThenTimer1.Enabled = FalseTextBox1.Enabled = TrueTextBox2.Enabled = TrueTextBox3.Enabled = TrueButton1.Enabled = TrueButton4.Enabled = True'mand = "open" '使用COM有件中的:Microsoft Multimedia Contril (SP3) 音乐播放'mand = "play" '使用COM有件中的:Microsoft Multimedia Contril (SP3) 音乐播放AxWindowsMediaPlayer1.URL = TextBox4.Text '使用COM有件中的Microsoft Media Player.这里是播放的文件MsgBox("时间到!", 48, "提示!")Label5.Text = "倒计时/顺计时时间:"Label5.ForeColor = Color.GreenEndIfEndIfEndIfIf x = 2 ThenLabel5.Text = "顺计时时间:"Label5.ForeColor = Color.RedTextBox1.Enabled = FalseTextBox2.Enabled = FalseTextBox3.Enabled = FalseTextBox1.Text += 1If TextBox1.Text = 59 ThenTextBox1.Text = 0TextBox2.Text += 1If TextBox2.Text = 59 ThenTextBox2.Text = 0TextBox3.Text += 1EndIfEndIfEndIfEndSubPrivateSub Timer2_Tick(sender AsObject, e As EventArgs) Handles Timer2.TickDim a AsBytea = Weekday(Now)If a = 1 ThenLabel8.Text = "星期天"EndIfIf a = 2 ThenLabel8.Text = "星期一"EndIfIf a = 3 ThenLabel8.Text = "星期二"EndIfIf a = 4 ThenLabel8.Text = "星期三"EndIfIf a = 5 ThenLabel8.Text = "星期四"EndIfIf a = 6 ThenLabel8.Text = "星期五"EndIfIf a = 7 ThenLabel8.Text = "星期六"EndIfLabel6.Text = DateStringLabel7.Text = TimeStringDim thisDay AsInteger = Microsoft.VisualBasic.DateAndTime.Day(Now)If y = 1 ThenIf TextBox5.Text = Year(Now) ThenIf TextBox6.Text = Month(Now) ThenIf TextBox7.Text = thisDay ThenIf TextBox8.Text = Hour(Now) ThenIf TextBox9.Text = Minute(Now) Theny = 0Button7.BackColor = Color.LimeButton7.ForeColor = Color.BlueButton7.Text = "启用"Button7.Enabled = TrueTextBox5.Enabled = TrueTextBox6.Enabled = TrueTextBox7.Enabled = TrueTextBox8.Enabled = TrueTextBox9.Enabled = TrueAxWindowsMediaPlayer1.URL = TextBox4.Text MsgBox("闹钟时间到!", 48, "闹钟提示!") EndIfEndIfEndIfEndIfEndIfEndIfIf z = 1 ThenIf TextBox10.Text = Year(Now) ThenIf TextBox11.Text = Month(Now) ThenIf TextBox12.Text = thisDay ThenIf TextBox13.Text = Hour(Now) ThenIf TextBox14.Text = Minute(Now) Thenz = 0Button6.BackColor = Color.GoldButton6.ForeColor = Color.BlueButton6.Text = "启动"Button6.Enabled = TrueTextBox10.Enabled = TrueTextBox11.Enabled = TrueTextBox12.Enabled = TrueTextBox13.Enabled = TrueTextBox14.Enabled = TrueShell("shutdown.exe -f -s -t 3")'MsgBox("时间到!", 48, "错误提示!")EndIfEndIfEndIfEndIfEndIfEndIfEndSubPrivateSub TextBox1_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox1.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox2.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox1_LostFocus(sender AsObject, e As EventArgs) Handles TextBox1.LostFocusDim a AsStringa = Val(TextBox1.Text) 'Val'转换为数值型If TextBox1.Text <>""ThenIf a > 60 Or a < 0 ThenMsgBox("请输入正确的时间;0~60!", 48, "错误提示!")TextBox1.Focus() '重新获取焦点TextBox1.Text = ""EndIfEndIfEndSubPrivateSub TextBox2_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox2.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox3.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox2_LostFocus(sender AsObject, e As EventArgs) Handles TextBox2.LostFocusDim a AsStringa = Val(TextBox2.Text) 'Val'转换为数值型If TextBox2.Text <>""ThenIf a > 60 Or a < 0 ThenMsgBox("请输入正确的时间;0~60!", 48, "错误提示!")TextBox2.Focus() '重新获取焦点TextBox2.Text = ""EndIfEndSubPrivateSub TextBox3_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox3.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenButton1.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub Timer3_Tick(sender AsObject, e As EventArgs) Handles Timer3.TickEndSubPrivateSub Button6_Click(sender AsObject, e As EventArgs) Handles Button6.ClickDim a AsByteDim thisDay AsInteger = Microsoft.VisualBasic.DateAndTime.Day(Now)If Val(TextBox10.Text + TextBox11.Text + TextBox12.Text + TextBox13.Text + TextBox14.Text) >Val(Year(Now) & Month(Now) & thisDay & Hour(Now) & Minute(Now)) Thena = MsgBox("确认启用定时关机!", 305, "警示!")If a = vbOK Thenz = 1Button6.BackColor = Color.RedButton6.ForeColor = Color.BlackButton6.Text = "启动中"Button6.Enabled = FalseTextBox10.Enabled = FalseTextBox11.Enabled = FalseTextBox12.Enabled = FalseTextBox13.Enabled = FalseTextBox14.Enabled = FalseElsez = 0Button6.Enabled = TrueTextBox10.Enabled = TrueTextBox11.Enabled = TrueTextBox12.Enabled = TrueTextBox13.Enabled = TrueTextBox14.Enabled = TrueEndIfElseMsgBox("请输入正确的时间!", 48, "错误提示!")TextBox14.Focus() '重新获取焦点EndIfEndSubPrivateSub Button7_Click(sender AsObject, e As EventArgs) Handles Button7.ClickDim thisDay AsInteger = DateAndTime.Day(Now)If Val(TextBox5.Text + TextBox6.Text + TextBox7.Text + TextBox8.Text + TextBox9.Text) >Val(Year(Now) & Month(Now) & thisDay & Hour(Now) & Minute(Now)) Theny = 1MsgBox("请输入正确的时间!", 48, "错误提示!")TextBox9.Focus() '重新获取焦点EndIfIf y = 1 ThenButton7.BackColor = Color.CrimsonButton7.ForeColor = Color.BlackButton7.Text = "启用中"Button7.Enabled = FalseTextBox5.Enabled = FalseTextBox6.Enabled = FalseTextBox7.Enabled = FalseTextBox8.Enabled = FalseTextBox9.Enabled = FalseEndIfEndSub'Private Sub TextBox3_LostFocus(sender As Object, e As EventArgs) Handles TextBox3.LostFocus' Dim a As String' a = Val(TextBox3.Text) 'Val'转换为数值型' If TextBox3.Text <> "" Then' If a > 60 Or a < 0 Then' MsgBox("请输入正确的时间;0~60!", 48, "错误提示!")' TextBox3.Focus() '重新获取焦点' TextBox3.Text = ""' End If' End If'End SubPrivateSub TextBox5_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox5.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox6.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox5_LostFocus(sender AsObject, e As EventArgs) Handles TextBox5.LostFocusDim a AsStringa = Val(TextBox5.Text) 'Val'转换为数值型If TextBox5.Text <>""ThenIf a > 9999 Or a < Year(Now) ThenMsgBox("请输入正确的时间,当前年份~9999年!", 48, "错误提示!")TextBox5.Focus() '重新获取焦点TextBox5.Text = Year(Now)EndIfEndIfEndSubPrivateSub TextBox6_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox6.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox7.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox6_LostFocus(sender AsObject, e As EventArgs) Handles TextBox6.LostFocusDim a AsStringa = Val(TextBox6.Text) 'Val'转换为数值型If TextBox6.Text <>""ThenIf a > 12 Or a <= 0 ThenMsgBox("请输入正确的时间,1~12!", 48, "错误提示!")TextBox6.Focus() '重新获取焦点TextBox6.Text = Month(Now)EndIfEndIfEndSubPrivateSub TextBox7_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox7.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox8.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox7_LostFocus(sender AsObject, e As EventArgs) Handles TextBox7.LostFocusDim a AsStringDim thisDay AsInteger = DateAndTime.Day(Now)a = Val(TextBox7.Text) 'Val'转换为数值型If TextBox7.Text <>""ThenIf a > 31 Or a <= 0 ThenMsgBox("请输入正确的时间,1~31!", 48, "错误提示!")TextBox7.Focus() '重新获取焦点TextBox7.Text = thisDayEndIfEndIfEndSubPrivateSub TextBox8_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox8.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox9.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox8_LostFocus(sender AsObject, e As EventArgs) Handles TextBox8.LostFocusDim a AsStringDim thisDay AsInteger = DateAndTime.Day(Now)a = Val(TextBox8.Text) 'Val'转换为数值型If TextBox8.Text <>""ThenIf a > 23 Or a < 0 ThenMsgBox("请输入正确的时间,00~23!", 48, "错误提示!")TextBox8.Focus() '重新获取焦点TextBox8.Text = Hour(Now)EndIfEndIfEndSubPrivateSub TextBox9_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox9.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenButton7.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox9_LostFocus(sender AsObject, e As EventArgs) Handles TextBox9.LostFocusDim a AsStringDim thisDay AsInteger = DateAndTime.Day(Now)a = Val(TextBox9.Text) 'Val'转换为数值型If TextBox9.Text <>""ThenIf a > 59 Or a <= 0 ThenMsgBox("请输入正确的时间,00~59!", 48, "错误提示!")TextBox9.Focus() '重新获取焦点TextBox9.Text = Minute(Now)EndIfEndIfEndSubPrivateSub TextBox10_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox10.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox11.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox10_LostFocus(sender AsObject, e As EventArgs) Handles TextBox10.LostFocusDim a AsStringa = Val(TextBox10.Text) 'Val'转换为数值型If TextBox10.Text <>""ThenIf a > 9999 Or a < Year(Now) ThenMsgBox("请输入正确的时间,当前年份~9999年!", 48, "错误提示!")TextBox10.Focus() '重新获取焦点TextBox10.Text = Year(Now)EndIfEndIfEndSubPrivateSub TextBox11_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox11.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox12.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox11_LostFocus(sender AsObject, e As EventArgs) Handles TextBox11.LostFocusDim a AsStringa = Val(TextBox11.Text) 'Val'转换为数值型If TextBox11.Text <>""ThenIf a > 12 Or a <= 0 ThenMsgBox("请输入正确的时间,1~12!", 48, "错误提示!")TextBox11.Focus() '重新获取焦点TextBox11.Text = Month(Now)EndIfEndIfEndSubPrivateSub TextBox12_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox12.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox13.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox12_LostFocus(sender AsObject, e As EventArgs) Handles TextBox12.LostFocusDim a AsStringDim thisDay AsInteger = DateAndTime.Day(Now)a = Val(TextBox12.Text) 'Val'转换为数值型If TextBox12.Text <>""ThenIf a > 31 Or a <= 0 ThenMsgBox("请输入正确的时间,1~31!", 48, "错误提示!")TextBox12.Focus() '重新获取焦点TextBox12.Text = thisDayEndIfEndIfEndSubPrivateSub TextBox13_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox13.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing) If e.KeyChar = Chr(13) ThenTextBox14.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox13_LostFocus(sender AsObject, e As EventArgs) Handles TextBox13.LostFocusDim a AsStringDim thisDay AsInteger = DateAndTime.Day(Now)a = Val(TextBox13.Text) 'Val'转换为数值型If TextBox13.Text <>""ThenIf a > 23 Or a < 0 ThenMsgBox("请输入正确的时间,00~23!", 48, "错误提示!")TextBox13.Focus() '重新获取焦点TextBox13.Text = Hour(Now)EndIfEndIfEndSubPrivateSub TextBox14_KeyPress(sender AsObject, e As KeyPressEventArgs) Handles TextBox14.KeyPress Const xStr AsString = "0123456789"e.KeyChar = IIf(InStr(xStr & Chr(8) & Chr(13), e.KeyChar.ToString), e.KeyChar, Nothing)If e.KeyChar = Chr(13) ThenButton6.Focus()' Call Command1_Click 回车键事件,这里调用按键1内的单击事件EndIfEndSubPrivateSub TextBox14_LostFocus(sender AsObject, e As EventArgs) Handles TextBox14.LostFocus Dim a AsStringDim thisDay AsInteger = DateAndTime.Day(Now)a = Val(TextBox14.Text) 'Val'转换为数值型If TextBox14.Text <>""ThenIf a > 59 Or a <= 0 ThenMsgBox("请输入正确的时间,00~59!", 48, "错误提示!")TextBox14.Focus() '重新获取焦点TextBox14.Text = Minute(Now)EndIfEndIfEndSubEndClass。

基于vb实现的闹钟设计

基于vb实现的闹钟设计

目录摘要............................................................... 错误!未定义书签。

第1章概述. (1)1.1 引言 (1)1.2 设计平台 (1)第2章开发工具简介 (2)2.1 VisualBasic6.0简介 (2)2.2 运用的控件和主要对象 (2)第3章设计实现 (6)3.1画时钟表盘上的所有直线元素 (6)3.2修改时针的形状 (6)3.3计时器的Interval(间距)属性设置 (6)3.4软件代码 (7)第4章总结 (16)4.1 结论 (16)4.2 心得体会 (16)参考文献 (17)第1章概述1.1 引言visual basic继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。

随着21世纪信息社会的到来,计算机在人们的工作和生活中的深入,要求我们越来越多地与计算机打交道,为了用户更加方便的,更加有舒适的心情,设计出一个比较舒心的时钟显示。

1.2 设计平台VB全称Visual Basic,它是以Basic语言作为其基本语言的一种可视化编程工具。

它继承了basic语言易学易用的特点,特别适合于初学者学习windows系统编程。

随着21世纪信息社会的到来,计算机在人们的工作和生活中的深入,要求我们越来越多地与计算机打交道,为了使用户更加地使用舒心。

通过这学期来Visual Basic的学习,我初步掌握了Visual Basic语言的最基本的知识,于是在张老师的指导下动手用Visual Basic 编写了这款时钟软件。

第2章开发工具简介2.1 VisualBasic6.0简介Visual Basic 是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。

它简单易学、效率高,且功能强大。

在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,动态链接库(DLL)、对象的链接与嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。

VB设计有语音报时和报警功能的闹钟

VB设计有语音报时和报警功能的闹钟

产品库推荐Label6 Caption 空显示日期Label7 Caption 空显示星期几Timer1 Interval 1000 每秒钟触发一次事件下面是代码:Private Sub Timer1 _ Timer( )hou = Hour (time)miu = Minute (time)sec = Second (time)yea = Year (Date)mon = Month (Date)da = Day (Date)Label1 . Caption = hou & "小时 "Label2 . Caption = miu & "分钟"Label3 . Caption = sec & "秒钟"Label4 . Caption = yea & "年"Label5 . Caption = mon & "月"Label6 . Caption = da & "日"Label7 . Caption = "星期" & Weekday (Date)End Sub下图是运行的结果:简单吧!下面我们看看不使用控件,我们用绘图函数自己来画出一个运行着的时钟。

现来补充一些vb提供的绘图方法:(3) VB绘图方法1、Line方法Line方法用于画出一条直线或矩形,其语法格式如下::[对象] . Line [ [ Step ] ( x1 , y1 ) ] -( x2 ,y2 )[ ,颜色 ] [ ,B [ F ] ]说明:(1)对象指的是Line在何处产生结果,它可以是窗体或图形框,默认为当前窗体;(2)( x1 ,y1 )为线段的起点坐标或矩形的左上角坐标;(3)(x2,y2)为线段的终点坐标或矩形的右下叫坐标;(4)关键字Step表示采用当前作图位置的相对值;(5)关键字B表示画矩形;F表示用画矩形的的颜色来填充矩形。

用vb.net实现闹钟提醒程序

用vb.net实现闹钟提醒程序

一个提醒程序,最典型的就是闹钟程序。

网上有不少个性化的提醒程序下载,但是大部分都是以时间为主的闹钟提醒。

我们也可以用来打造一个适合自己的提醒程序,比如监控一个某个应用程序的变化然后发出声音提醒自己等等。

一个提醒程序,最重要能在符合提醒条件的时候发出声音来提醒使用者,在这里,我们就对具体的提醒条件啰嗦了,只针对如何实现提醒声音的播放进行说明。

在的。

net组件中,并没有提供播放声音文件的组件,但是我们可以通过使用Com组件来播放声音文件。

但是,要注意的事,我们只需要发出提示的声音而已,并不需要像播放器那样播放不同格式的声音文件和繁多的列表,所以我们可以通过API函数来循环播放单个的声音文件。

在Windows API函数的有一个PlaySound函数,它用于播放WAV格式的声音文件,我们可以用它来反复播放一个指定的WAV文件来实现提醒功能。

首先在中引入API声明Public Declare Function PlaySound Lib "winmm.dll" (ByVal lpszSoundName As String, ByVal hModule As Integer, ByVal dwFlags As Integer) As Integer然后定义几个我们程序中必须用到的dwFlags参数常量同步调用PlaySound中指定的文件,播放完WAV文件后才返回结果Const SND_SYNC As Integer = &H0异步调用PlaySound中指定的文件,不必等到播放完WAV文件后就直接返回结果,在这里我们可以调用异步方法来播放文件Const SND_ASYNC As Integer = &H1反复播放指定的WAV文件Const SND_LOOP As Integer = &H8在调用的时候hModule参数必须为0需要停止的时候通过调用PlaySound(vbNullString, 0, 0)来实现现在我们在窗体上放置两个按钮,一个用于开始播放,一个用于停止播放,然后再放置一个TextBox控件,用于指定WAV文件的路径,界面如下图所示:图一:示例界面完整代码如下:Public Declare Function PlaySound Lib "winmm.dll" (ByVal lpszSoundName As String, ByVal hModule As Integer, ByVal dwFlags As Integer) As IntegerConst SND_FILENAME As Integer = &H20000Const SND_ALIAS As Integer = &H10000Const SND_SYNC As Integer = &H0Const SND_ASYNC As Integer = &H1Const SND_LOOP As Integer = &H8Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickPlaySound(TextBox1.Text, 0, SND_LOOP Or SND_ASYNC)End SubPrivate Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.ClickPlaySound(vbNullString, 0, 0)End Sub运行,在TextBox1中输入有效的WAV文件的路径,然后单击开始,就可以循环播放声音了,单击停止按钮就可以停止播放。

用VB设计一个定时闹钟程序

用VB设计一个定时闹钟程序

用VB设计一个定时闹钟程序使用win98的人一定知道其中有一个“计划任务"的应用程序,它能够到指定时间便开始工作。

不要认为它很神秘,其实用VB来设计这样一个程序是非常容易的事,以下是一个简单的VB 闹钟程序,可供各位使用VB的朋友参考,如有何不适之处,请多指点!首先在form1上建立三个命令按钮,分别为command1(打开预启动的文件);command2(设定时间的按钮);第三个command3(即可启动)按钮可有可无;一个label1用来显示你预打开的文件名的路径;一个lbltime用来显示现在的时间;还有一个common dialog,它在工程菜单的部件中,你可把它加到工具箱中再开始使用;关于对话框你不必自己建,只要从应用程序向导中添加即可;一个timer,它的interval=500。

其次在form1的属性中设置为:startupposition=2-centerscreen和maxbutton=false;label1的属性中设置为:alignment=2-center。

外观大致是如图所示:下面我们开始编程:Option ExplicitDim AlarmTime'申明变量---------Private Sub Command1_Click()Call dialog'调用dialog子程序End Sub--------Private Sub Command2_Click()AlarmTime = InputBox(“请输入你想设定的时间,例如(19:12:00)", “小闹钟")If AlarmTime = “" Then Exit SubIf Not IsDate(AlarmTime) ThenMsgBox “你所输入的不是时间格式,请重试!", ,“Wrong"ElseAlarmTime = CDate(AlarmTime)End If'判断输入的是否可转换成time格式'isdate函数是判断输入的是否可转换成date格式End Sub--------------Private Sub Command3_Click()Call deng'调用deng子程序End Sub---------------Private Sub Form_Click()frmAbout.Show'显示关于对话框End Sub-------------Private Sub Form_Load()Command3.Enabled = 0AlarmTime = “"'初始化时command3为不可用的End Sub---------------Private Sub Form_Resize()If WindowState = 1 Thenmintimeelsecaption=“小闹钟"End If'如果窗口被最小化,则调用mintime程序End Sub---------------Private Sub mintime()Caption = Format(Time, “long Time")'使用长时间格式来显示时间End Sub---------------Private Sub Timer1_Timer()If lblTime.Caption <> CStr(Time) ThenlblTime.Caption = TimeEnd If'显示时间每秒钟的变化If Time >= AlarmTime ThenCall dengEnd If'判断如果现在的时间超过了设定的时间,则调用deng子程序If WindowState = 1 ThenIf Minute(CDate(Caption)) <> Minute(Time) ThenmintimeEnd IfEnd If'最小化时显示时间每分钟的变化End Sub-------------Sub dialog()CommonDialog1.Flags = cdlCFBothCommonDialog1.ShowOpenLabel1.Caption = CommonDialog1.filenameIf Label1 <> “" ThenCommand3.Enabled = -1ElseExit SubEnd If'把打开的文件名给于label1'如果label1不为空时,则command3即可用End Sub--------------Sub deng()Dim ssss = Shell(Label1.Caption, 1)End'启动指定的文件,并且结束小闹钟程序End Sub最后在about对话框中要提的是:在form_load中app.title表示你的应用程序的名字;app.major、minor、revision是关于应用程序的版本信息;lblDescription.Caption 用于对本程序的一些说明描述之类的话;lblDisclaimer.Caption用于版权信息或警告等。

闹铃软件VB源码+设计思路

闹铃软件VB源码+设计思路

闹铃软件D2.0版(附界面,VB源码)——值得参考的VB源码作者:西门吹雪本文适用于初,中级VB程序设计爱好者做研究参考。

高级程序设计者及精通API的飘过,看懂这个程序后相信你能很熟练VB。

笔者认为:程序设计主要靠两方面的能力,一是技术,二是思路。

技术上的问题,都不是问题;自己的思路则是你成功的首要前提。

本程序的一些巧妙的设计可以为大家提供借鉴。

下面先介绍一下主要功能吧:1·启动定时后,时间到后播放器开始播放音乐;2·支持用户自定义歌曲;3·程序自动记录用户信息:歌曲列表,所定时间,选项,主题等,重启程序时加载用户信息;4·简单数据库记录歌曲路径等;5·支持用户定两个时间;6·用户点击关闭时询问;7·用户点击最小化按钮时,最小化到托盘;8·实现托盘菜单;9·支持顺序播放音乐列表。

10·实现标准时间显示以下是本程序的界面截图:1·托盘图标及托盘菜单(实现最小化到托盘)2·主菜单截图3·音乐框菜单截图(实现列表框右键选中项目)4·退出询问截图(实现关闭程序不直接退出)5·主界面截图主程序代码:'***********************************发送按键Private Declare Sub keybd_event Lib "user32" (ByV al bVk As Byte, ByV al bScan As Byte, ByV al dwFlags As Long, ByV al dwExtraInfo As Long)Const KEYEVENTF_KEYUP = &H2'************************************Option ExplicitPrivate Declare Function LockWorkStation Lib"user32.dll" () As Long'变量列表:a1,b1,c1,d1,d2,c3,d3,n,mDim a1 As String, b1 As String, c1 As String, d1 As StringDim d2 As String, c3 As Integer, d3 As String, n, shun As IntegerDim m, picu As String'************用户数据数组'变量列表:pta,mpn,lb1,lb2,op1,op2,conPrivate Type configpic As String '背景pta As String '用户路径mpn As String '歌曲名字lb1 As String '时间1lb2 As String '时间2op1 As Integer '开关1op2 As Integer '开关2End TypeDim con As config'歌曲信息数组'变量列表:nam,pth,patPrivate Type lujingnam As String * 16pth As String * 64End TypeDim pat As lujingDim thr As Integer'********************************************* ****API实现右键选中Private Declare Sub mouse_event Lib "user32" (ByV al dwFlags As Long, ByV al dx As Long, ByV al dy As Long, ByV al cButtons As Long, ByV al dwExtraInfo As Long)Const MOUSEEVENTF_LEFTDOWN = &H2Const MOUSEEVENTF_LEFTUP = &H4'载入自动编码函数(原创)'变量列表:mnFunction bianma(name As String) As IntegerDim mn As StringIf name = "" Then bianma = 1000If name <> "" Thenmn = Asc(Left(name, 1)) & Asc(Right(name, 1)) &Len(name)bianma = Abs(Mid(mn, 2, 1) & Right(mn, 1) & Len(mn) & Mid(mn, Fix(Len(mn) / 2), 1))End IfEnd Function'载入判断文件类型函数,成员为文件全名(原创)。

VB电子计时器的制作

VB电子计时器的制作

VB电子计时器的制作我将以逐步指导的方式说明如何制作一个VB电子计时器。

步骤1:创建新项目首先,打开Visual Studio并创建一个新的Windows Forms应用程序项目。

为项目选择一个适当的名称,并选择一个合适的位置保存。

步骤2:设计用户界面在Form1窗体上,我们将添加所需的控件以构建电子计时器的用户界面。

根据需要,您可以自定义窗体的大小和标题。

从工具箱中拖动并放置一个Label控件。

该控件将用于显示计时器的当前时间。

2.2添加按钮控件从工具箱中拖动并放置两个Button控件。

一个按钮用于启动计时器,另一个按钮用于停止计时器。

2.3调整控件位置和大小根据需要,调整控件的位置和大小,以便它们适合您希望的用户界面布局。

步骤3:编写代码在Form1的代码视图中,将分别编写启动计时器和停止计时器的代码。

3.1启动计时器在启动按钮的Click事件处理程序中,编写以下代码:```Private Sub btnStart_Click(sender As Object, e As EventArgs) Handles btnStart.ClickTimer1.Enabled = True '启用定时器Timer1.Start( '开始计时End Sub```3.2停止计时器在停止按钮的Click事件处理程序中,编写以下代码:```Private Sub btnStop_Click(sender As Object, e As EventArgs) Handles btnStop.ClickTimer1.Stop( '停止计时Timer1.Enabled = False '禁用定时器End Sub```步骤4:编写计时器逻辑在Form1的代码区域中,添加以下代码以编写计时器逻辑。

```Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.TicklblTimer.Text = DateTime.Now.ToString("HH:mm:ss")End Sub```步骤5:测试应用程序步骤6:进一步功能改进(可选)除了基本的启动和停止计时器的功能之外,您可以进一步改进该应用程序,添加一些其他功能,例如:- 重置计时器:通过将时间重置为零来重置计时器。

vb中timer控件的用法

vb中timer控件的用法

vb中timer控件的用法Timer控件是Visual Basic中的一个内置控件,用于生成循环定时事件的定时器。

它是一种非常实用的工具,可以用于处理需要在指定的时间间隔内重复执行的任务。

下面是Timer控件的详细用法说明。

1. 加载Timer控件:- 在Visual Basic的工具箱中找到Timer控件,然后将其拖放到需要使用它的窗体上。

- 可以在代码中使用如下语句来手动创建Timer控件并添加到窗体上:Dim myTimer As New TimerMe.Controls.Add(myTimer)2.基本属性和事件:- Interval属性:设置或获取在定时器触发每个Tick事件之间的时间间隔,以毫秒为单位。

例如,将Interval属性设置为1000表示定时器每隔1秒钟触发一次Tick事件。

myTimer.Interval = 1000- Enabled属性:设置或获取一个布尔值,指示是否启用定时器。

当Enabled属性设置为True时,定时器将会按照Interval属性指定的时间间隔触发Tick事件;当设置为False时,定时器停止触发事件。

myTimer.Enabled = True- Tick事件:在定时器触发时发生,可以将其用作执行指定任务的入口点。

您可以在Tick事件中编写自己的代码来处理想要执行的任务。

Private Sub myTimer_Tick(ByVal sender As Object, ByVal e As EventArgs) Handles myTimer.Tick'在此处编写需要执行的任务代码End Sub3.启动和停止定时器:- 控制定时器的运行状态可以使用Enabled属性。

将Enabled设置为True将启动定时器,而将其设置为False将停止定时器。

-例如,以下代码将在窗体加载时启动定时器,并在点击停止按钮时停止它:Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.LoadmyTimer.Enabled = TrueEnd SubPrivate Sub StopButton_Click(ByVal sender As Object, ByVal e As EventArgs) Handles StopButton.ClickmyTimer.Enabled = FalseEnd Sub4.常用的应用场景:-定时刷新UI:例如,您可以使用定时器定期更新UI控件的状态,从而实现UI元素的实时刷新。

电子时钟——VB课程设计

电子时钟——VB课程设计

《多媒体软件设计技术》课程设计报告书课程名称:多媒体软件设计技术班级:学号:姓名:指导教师:二○一一年四月一.引言本次课程设计是为了考察我们对Visual Basic的综合运用能力,着重于多媒体方面的设计。

在程序设计的过程中曾参考过有关的资料,并借鉴了一些内容。

二.设计课题设计可以定时闹铃的机械时钟。

要求:时钟有时针、分针、秒针,在设置的某个时刻,时钟发出特定的声音——闹铃。

三.程序设计内容1)设计思路本次设计用到了窗体,时钟控件,文本框控件,标签控件,命令按钮控件和形状控件,利用line方法,API函数。

各控件的作用是:1.窗体用来承载其他控件2.时钟控件用来控制画钟盘指针和闹铃的发出。

3.文本框用来输入设定的闹铃时间。

4.标签框用来美化设计界面和提示。

5.命令按钮用来启动定时和退出程序。

6.利用形状控件画钟盘。

7.应用line方法画线。

8.调用API函数播放WA V文件2)控件属性设置3)设计界面4)运行结果界面5)程序源代码1.定义全局变量Private LastMinute As IntegerPrivate LastHour As IntegerPrivate Lastx As IntegerPrivate Lasty As Integer2.在窗体载入前声明API函数Private Declare Function PlaySound Lib "winmm.dll" Alias "PlaySoundA" _ (ByVal IpszName As String, ByVal hModule As Long, ByVal dwflags As Long) As Long3.窗体函数Private Sub 闹钟_Load()Lastx = 999End Sub4.计时器Timer1Private Sub Timer1_Timer()Const pi = 3.141592653Dim TDim X As IntegerDim Y As IntegerT = Now '将当前时间赋给TSEC = Second(T) '将当前的秒数赋给SECMin = Minute(T) '将当前的分钟数赋给MinHR = Hour(T) '将当前的小时数赋给HR闹钟.Scale (-16, 16)-(16, -16)If Min > lastMin Or HR > LastHour Then '如果小时或分钟到了下一个值,则重新赋值LastMinute = MinLastHour = HR闹钟.Cls '将前一时刻的图像清屏Lastx = 999闹钟.DrawWidth = 3 '设置时针的宽度为3闹钟.DrawMode = 13BLUE = RGB(0, 0, 255) '用RGB产生蓝色h = HR + pi / 60X = 3 * Sin(h * pi / 6)Y = 3 * Cos(h * pi / 6) '计算出点(X,Y)的坐标闹钟.Line (0, 0)-(X, Y), BLUE '画时针,距离为点(X,Y)到点(0,0)的距离,颜色为蓝色闹钟.DrawWidth = 2GREEN = RGB(0, 255, 0)X = 6 * Sin(Min * pi / 30)Y = 6 * Cos(Min * pi / 30)闹钟.Line (0, 0)-(X, Y), GREEN '画分针,颜色为绿色闹钟.DrawWidth = 1End If闹钟.DrawMode = 10RED = RGB(255, 0, 0) '用RGB产生红色X = 9 * Sin(SEC * pi / 30)Y = 9 * Cos(SEC * pi / 30)If Lastx > 999 Then闹钟.Line (0, 0)-(Lastx, Lasty), REDEnd If闹钟.Line (0, 0)-(X, Y), RED '画秒针,颜色为红色Lastx = XLasty = YEnd Sub5.退出按钮Private Sub 退出_Click() '单击“退出”按纽,退出程序Unload MeEnd Sub6.定时按钮Private Sub Command1_Click()If Val(Text1) < 1 Or Val(Text1) > 24 ThenMsgBox "小时数输入错误!", vbExclamation, "提示信息" '当输入的小时数不在1~24时,弹出输出信息框Text1 = "" '将输入的错误时间清除Text1.SetFocusEnd IfIf Val(Text2) < 1 Or Val(Text2) > 60 Then '当输入的分钟不在1~60时,弹出输出信息框MsgBox "分钟数输入错误!", vbExclamation, "提示信息"Text2 = ""Text2.SetFocusEnd IfEnd Sub7.计时器Timer2Private Sub Timer2_Timer() '当系统时间到达定时时间时,播放提示音If Text1 = Hour(Time) ThenIf Text2 = Minute(Time) ThenCall PlaySound(App.Path + "\闹钟声.wav", 0&, &H0)End '播放完一遍后自动关闭End IfEnd IfEnd Sub6)程序问题分析1.本程序在运行时,秒钟的长短会变化,有时会超出钟盘。

vb中timer的用法

vb中timer的用法

vb中timer的用法在VB(Visual Basic)中,Timer 控件用于在程序中创建定时器。

它可以帮助你以固定的时间间隔执行特定的操作。

下面是在 VB 中使用Timer 控件的基本步骤:1. 添加 Timer 控件:在 VB 的工具箱(Toolbox)中,找到 Timer 控件并拖动到你的窗体上。

2. 设置 Timer 的属性:在 Timer 控件的属性窗口中,你可以设置两个重要的属性:Interval:以毫秒为单位的时间间隔。

它的范围是 0 到 65535。

设置为 0 将禁用定时器。

Enabled:这个属性决定定时器是否启用。

设置为 True 表示启用定时器。

3. 编写 Timer 的事件处理程序:当 Timer 的时间间隔过去后,它会触发一个名为 TimerEvent 的事件。

你可以在代码中编写这个事件的处理程序。

例如,你可以在 Form 的代码窗口中添加以下代码来处理 Timer 的事件:vbPrivate Sub Timer1_Timer()' 这里编写定时器每次触发时执行的代码MsgBox "这是定时器的触发事件"End Sub4. 启动 Timer:在你的程序中,当你想要启动定时器时,设置 Timer 的 Enabled 属性为 True。

例如:vbTimer1.Enabled = True5. 停止 Timer:如果你想停止定时器,可以将 Timer 的 Enabled 属性设置为 False。

例如:vbTimer1.Enabled = False。

Visual Basic 6.0编写小闹钟程序课程设计

Visual Basic 6.0编写小闹钟程序课程设计

-南昌航空工业学院-计算机课程设计<Visual Basic 6.0编写小闹钟程序>系别:班级:姓名:同组人:指导老师:目录一.实验目的 (2)二.实验原理及步骤 (2)三.附录 (3)流程图 (4)执行界面 (5)程序源代码 (6)四.参考书目 (7)五.心得体会 (7)一.实验目的编写一个带有闹钟的小时钟(指针式)二.实验原理及步骤(1)启动Visual Basic 6.0,选择“标准EXE”,单击“打开”按钮,VB 自动创建一个名为“工程一”的标准工程,同时创建一个名为“Form1”的窗体。

(2)在窗体上添加一个Timer控件(用于时间的控制)、一个Label控件(用于提示信息的显示)、两个CommandButter控件,如图一所示。

(3)在“定时”的功能中要设置响铃的时间。

为“闹钟定时”编写代码,(参见附录)。

(4)为Timer控件编写代码,(参见附录)。

(5)运行程序,观看结果,初始界面如图二所示。

设置闹钟时间,如图二所示。

输入错误提示,如图三所示。

执行闹钟功能,如图四所示。

三.附录程序流程图:执行界面:(图片一)(图片二)(图片三)(图片四)程序源代码:Public AlarmTime------------------------------------------------------------------------------------------------- Private Sub Command1_Click()Dim tt = AlarmTimeAlarmTime = InputBox("Enter the ring time:", "Alarm", AlarmTime)If AlarmTime = "" And t = "" Then Exit SubIf AlarmTime = "" And t <> "" Then AlarmTime = TEMPIf AlarmTime = "" Then Exit SubIf Not IsDate(AlarmTime) Then'判断date是否可以转换为时间MsgBox "The time you entered was not valid."ElseAlarmTime = CVDate(AlarmTime)'返回转换成时间类型的表达式End IfEnd Sub------------------------------------------------------------------------------------------------- Private Sub SetCaptionTime()Caption = Format(Time, "Short Time")End Sub------------------------------------------------------------------------------------------------- Private Sub Command2_Click()EndEnd Sub------------------------------------------------------------------------------------------------- Private Sub Label1_Click()Label1.BorderStyle = "1-Fixed single"End Sub------------------------------------------------------------------------------------------------- Private Sub Timer1_Timer()Timer1.Interval = 1000Static Alarmed As IntegerIf Label1.Caption <> CStr(Time) ThenIf Time = AlarmTime And Not Alarmed Then'判断是否重复响铃MsgBox ("Ring !" & vbCrLf & Time)Alarmed = TrueElseIf Time < AlarmTime ThenAlarmed = FalseEnd IfLabel1.FontName = "Times New Roman"Label1.FontSize = 36Label1.Caption = TimeEnd IfEnd Sub四.参考书目〈Visual Basic程序设计教程〉刘炳文许蔓舒编著〈Visual Basic 6.0编程实例〉张宏林周江峰等编著〈Visual Basic 6.0编程实例大制作〉李光明主编〈Visual Basic 6.0程序设计教程〉罗朝盛主编〈VB Script可视化程序设计〉刘炳文编著五.心得体会两周的计算机程序设计结束了,经过两周的翻阅资料和设计,以及把以前所学的运用到设计当中。

VB案例集锦

VB案例集锦

案例集锦在前面的章节中讲述了使用VB创建数据库应用程序的几个范例,其实作为编程语言来说,VB易于掌握和提高,可以极为迅速和简洁的创建Windows应用程序,非常适合普通的用户来编写符合自己需要的实用小程序。

在接下来的内容中将向读者介绍几个用VB开发实用小程序的方法,并且结合实例向读者介绍VB编程中的许多技巧。

案例一我的桌面小闹钟一、概述在本例中将创建一个可以自动跟随鼠标移动的小闹钟,实时地显示当前计算机的时间,并且允许用户添加、删除和修改定时任务,这些任务将被保存在一个Access数据库中,在设置的时间到达时,闹钟将用音乐警报,并弹出消息框来提示用户。

其功能模块图如图1.1所示。

图1.1系统的功能模块图二、数据库的准备通过Access或者VB可视化数据管理器创建一个Access数据库,在其中添加一个名为“任务列表”的数据表。

该数据表的结构如表1.1所示。

表1.1 “任务列表”数据表的结构三、应用程序的编写在VB中创建一个新的“标准EXE”工程,将其命名为“我的小闹钟”。

在工程默认的窗体Form1中添加一个图片控件,两个标签控件,一个时间控件,依表11.2至表11.5所示的内容设置窗体和控件的属性。

2案例集锦表1.2窗体Form1的属性表1.3图片控件的属性表1.4标签控件的属性表1.5时间控件的属性在控件箱窗体的空白部分右键单击,在弹出的菜单中选择“部件”,将打开“部件”对话框,如图1.2所示。

图1.2“部件”对话框在“部件”对话框中选择“控件”选项卡,在其列表中找到“Microsoft Multimedia Control 6.0”,在其前方的复选框中打勾,单击“确定”按钮,向工程中添加对Mutimedia MCI控件的引用。

在控件箱的最后将出现Mutimedia MCI控件的图标,选中其图标,在Form1中绘出其实例,如图1.3所示,其属性将在代码中设置。

案例一 我的桌面小闹钟3图1.3 添加Mutimedia MCI 控件的Form1在工程中添加一个普通窗体Form2,如表1.7和表1.8所示为其设置属性并添加菜单。

vb课程设计-全自动音乐打铃软件的设计解析

vb课程设计-全自动音乐打铃软件的设计解析

目录1 选题背景 (2)1.1 背景 (2)1.2 设计要求 (2)1.3 指导思想 (2)2 方案论证 (2)3 程序设计论述 (2)3.1 程序工作 (2)3.2 控件属性说明 (4)3.3 程序代码(附带解释说明) (4)4 结果分析 (11)4.1 运行结果 (11)4.2 结果分析 (15)5 总结 (15)设计体会及今后的改进意见 (16)参考文献资料 (17)1 选题背景1.1 背景如今,许多学校、工矿等单位都安装音乐打铃器,音乐打铃已成为一种时尚的打铃方式,它改进了传统单调的打铃方式,让打铃方式变得丰富多彩。

因此,我选择了全自动打铃软件作为我的课程设计课题。

1.2 设计要求设计基本要求为定时播出,以周为单位,可以在任意天任意时间设定播放音乐铃声。

可以任意控制播放时间的长短,在设定的时间内会连续播放,结束时间一到即会停止。

可设置多套播放计划,根据需要随时启用。

内置十首铃声,支持自定义铃声名称及音乐。

设置计划时也可指定磁盘上的文件,支持WAV、MID、MP3等音乐文件格式。

软件界面简洁实用,可以随时手动播放需要的铃声,或者暂时屏蔽某个不需要的铃声。

1.3 指导思想本程序设计主要是用到windows media player播放器控件、定时器、对话框、列表框、文件列表框和组合框的使用方法。

选择结构和循环结构的设计使用。

2 方案论证最初的设计方案只用列表框加载音乐,用MMControl播放控件进行播放,但是添加音乐后,音乐不播放,加之对此播放控件不太熟悉,编程较慢,且出现错误较多就放弃了此计划。

后来的改进的计划是加载windows media player控件,设计两个命令按钮“默认列表”、“自定义列表”分别用来切换默认列表与自定义列表两个播放列表,其中默认列表对应firelist1,内置十首默认铃声;自定义列表对应list1,可以通过单击“添加文件”按钮添加自己要选的指定格式的音乐。

当在任意一个text1文本框中输入上课或下课时间后(考虑到学校上下课的时间基本精确到分钟,所以程序设计是按此设计的,输入时间时,就精确到分钟即可),当到达此时间后,按照所选计划进行播放,当播放进度与设置的播放时长相等时,结束播放。

VB编辑时钟控件+倒计时+闹钟+背景图片+背景音乐

VB编辑时钟控件+倒计时+闹钟+背景图片+背景音乐

Private Sub Check1_Click()WindowsMediaPlayer1.Controls.pauseEnd SubPrivate Sub Check2_Click()WindowsMediaPlayer1.Controls.playEnd SubPrivate Sub Check3_Click()WindowsMediaPlayer1.Controls.stopEnd SubPrivate Sub Command1_Click()Timer1.Interval = 1000Timer1.Enabled = TrueEnd SubPrivate Sub Command2_Click()Timer2.Enabled = TrueTimer2.Interval = 1000End SubPrivate Sub Form_Load()Picture1.Picture = LoadPicture(App.Path & "\images\" & "tp1.jpg") End SubPrivate Sub Timer1_Timer()Static X!, Y!, Z!, a%, b%, c%, q%, w%, E%Const n = 3.141592653Command1.Visible = FalsePicture1.ClsPicture1.Scale (-1000, 1000)-(1000, -1000)Picture1.Circle (0, 0), 900Dim l As DoubleDim r As DoubleFor i = 0 To 60l = (1 - Sin(i / 60 * 2 * 3.1415926)) * 900 - 900r = (1 - Cos(i / 60 * 2 * 3.1415926)) * 900 - 900Picture1.DrawWidth = 3Picture1.PSet (l, r)Picture1.DrawWidth = 4Next iPicture1.PSet (0, 0)Picture1.CurrentX = -100: Picture1.CurrentY = 850Picture1.FontSize = 25Picture1.Print "12"Picture1.CurrentX = -40: Picture1.CurrentY = -690Picture1.Print "6"Picture1.CurrentX = -850: Picture1.CurrentY = 80Picture1.Print "9"Picture1.CurrentX = 700: Picture1.CurrentY = 100Picture1.Print "3"Picture1.FontSize = 18Picture1.CurrentX = 360: Picture1.CurrentY = 740Picture1.Print "1"Picture1.CurrentX = 650: Picture1.CurrentY = 450Picture1.Print "2"Picture1.CurrentX = 630: Picture1.CurrentY = -320Picture1.Print "4"Picture1.CurrentX = 360: Picture1.CurrentY = -600Picture1.Print "5"Picture1.CurrentX = -430: Picture1.CurrentY = 740Picture1.Print "11"Picture1.CurrentX = -750: Picture1.CurrentY = 440Picture1.Print "10"Picture1.CurrentX = -700: Picture1.CurrentY = -360Picture1.Print "8"Picture1.CurrentX = -370: Picture1.CurrentY = -610Picture1.Print "7"Picture1.DrawWidth = 1X = Second(Time) * 2 * n / 60Y = Minute(Time) * 2 * n / 60Z = Hour(Time) * 2 * n / 12Picture1.Line (0, 0)-(800 * Sin(X), 800 * Cos(X))Picture1.Circle (700 * Sin(X), 700 * Cos(X)), 50Picture1.Line (0, 0)-(600 * Sin(Y), 600 * Cos(Y)), QBColor(5)Picture1.Line (0, 0)-(400 * Sin(Z), 400 * Cos(Z)), QBColor(12)h = Year(Now)i = Month(Now)j = Day(Now)k = Hour(Now)l = Minute(Now)m = Second(Now)Label10.Caption = h & "-" & i & "-" & jLabel11.Caption = k & ":" & l & ":" & mu = Weekday(Now)Select Case uCase 1Label8.Caption = "一"Case 2Label8.Caption = "二"Case 3Label8.Caption = "三"Case 4Label8.Caption = "四"Case 5Label8.Caption = "五"Case 6Label8.Caption = "六"Case 7Label8.Caption = "日"End SelectEnd SubPrivate Sub Timer2_Timer()Dim z1, z2, z3, z4, z5, z6, z7, z8, z9, z10%z1 = V al(Text1.Text)z2 = V al(Text2.Text)z3 = V al(Text3.Text)z4 = V al(Text4.Text)z5 = V al(Text5.Text)z6 = V al(Text6.Text)date1 = DateSerial(z1, z2, z3)date2 = DateSerial(Year(Now), Month(Now), Day(Now))z7 = DateDiff("d", date2, date1)time1 = TimeSerial(z4, z5, z6)time2 = TimeSerial(Hour(Now), Minute(Now), Second(Now)) z8 = DateDiff("h", time2, time1)z9 = DateDiff("n", time2, time1) - z8 * 60z10 = DateDiff("s", time2, time1) - z9 * 60 - z8 * 3600If z2 > 12 Or z3 > 31 Or z4 > 23 Or z5 > 59 Or z6 > 59 Then q = MsgBox("输入有误,请重新输入", , "出错")Print qEnd IfIf z10 < 0 Thenz9 = z9 - 1z10 = 60 + z10End IfIf z9 < 0 Thenz8 = z8 - 1z9 = 60 + z9End IfIf z8 < 0 Thenz7 = z7 - 1z8 = 24 + z8End IfLabel14.Caption = z7 & "天" & z8 & "小时" & z9 & "分" & z10 & "秒"If z7 = 0 And z8 = 0 And z9 = 0 And z10 = 0 ThenMsgBox "时间到", , "倒计时"WindowsMediaPlayer1.URL = App.Path & "\music\" & "dd.mp3" Timer2.Enabled = FalseEnd IfEnd SubPrivate Sub tp1_Click()Picture1.Picture = LoadPicture(App.Path & "\images\" & "tp6.jpg") End SubPrivate Sub tp2_Click()Picture1.Picture = LoadPicture(App.Path & "\images\" & "tp2.jpg") End SubPrivate Sub tp3_Click()Picture1.Picture = LoadPicture(App.Path & "\images\" & "tp3.jpg") End SubPrivate Sub tp4_Click()Picture1.Picture = LoadPicture(App.Path & "\images\" & "tp4.jpg") End SubPrivate Sub tp5_Click()Picture1.Picture = LoadPicture(App.Path & "\images\" & "tp5.jpg") End SubPrivate Sub yy1_Click()WindowsMediaPlayer1.URL = App.Path & "\music\" & "He's a Pirate.mp3" End SubPrivate Sub yy2_Click()WindowsMediaPlayer1.URL = App.Path & "\music\" & "apologize.mp3" End SubPrivate Sub yy3_Click()WindowsMediaPlayer1.URL = App.Path & "\music\" & "Heartbeats.mp3" End Sub。

VB整点报时的程序

VB整点报时的程序
Private Const SND_ASYNC = &H1
Private Const SND_NOWAIT = &H2000
Private Sub Form_Load()
'防止程序重复加载
If App.PrevInstance Then End
'隐藏窗体
Timer1.Interval = 800
建立一个工程,在窗体上添加一个时钟控件(timer1,interval=800),然后添加如下代码:
ቤተ መጻሕፍቲ ባይዱ
Option Explicit
Private Declare Function sndPlaySound Lib "winmm.dll" Alias "sndPlaySoundA" (ByVal lpszSoundName As String, ByVal uFlags As Long) As Long
Form1.Visible = False
End Sub
Private Sub timer1_Timer()
On Error Resume Next
Dim tmChk As Date
Dim sndFlag As Long
tmChk = Time
sndFlag = SND_ASYNC + SND_NOWAIT
'验证是否整点
If Minute(tmChk) = 0 And Second(tmChk) = 0 Then
'播放相应整点的声音文件
sndPlaySound App.Path & "\sounds\sound" & Hour(tmChk) & ".wav", sndFlag

VB小闹钟

VB小闹钟

VB小闹钟今天,我们将制作可以实现“计划任务管理器”功能的应用程序。

当到达指定时间时,程序能够自动出现提示信息和播放背景音乐。

程序运行结果如图所示。

运行结果技术要点●Time函数●使用MMControl控件●使用CommonDialog控件实现过程■新建项目打开Visual ,选择“新建项目”,在项目类型窗口中选择“Visual Basic项目”,在模板窗口中选择“Windows应用程序”,在名称域中输入“SimpleClock”,然后选择保存路径。

单击“确认”。

■添加控件向窗体添加三个Label控件,三个TextBox控件,三个Button控件,一个MMControl 控件、一个CommonDialog控件和一个Timer控件。

■设置属性根据运行时的界面,将Label控件和Button控件的Text属性改为和界面一致。

其余见下表。

窗体各控件的属性值■添加代码Private Sub Button1_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Button1.ClickMe.WindowState = System.Windows.Forms.FormWindowState.MinimizedEnd SubPrivate Sub Button3_Click(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Button3.Click'打开要播放的声音文件AXCommonDialog1.ShowOpen()Text3.Text = AXCommonDialog1.FileNameEnd SubPrivate Sub Timer1_Tick(ByVal eventSender As System.Object, ByVal eventArgs AsSystem.EventArgs) Handles Timer1.TickDim temptime As String'将前12个小时和后12个小时分开If Hour(TimeOfDay) > 12 Thentemptime = VB.Left(CStr(TimeOfDay), 5)Elsetemptime = VB.Left(CStr(TimeOfDay), 4)End If'如果时间相同,则显示提示信息If Text1.Text = temptime ThenMMControl1.FileName = Text3.Textmand = "open"mand = "play"Timer1.Enabled = FalseMsgBox(Text2.Text, , "小闹钟")End IfEnd Sub■运行程序单击菜单“调试|启动”或单击图标运行程序。

VB程序设计_计时器控件

VB程序设计_计时器控件

VB程序设计_计时器控件VB程序设计中的计时器控件是一种用来进行计时操作的控件,它能够按照一定的时间间隔触发事件,从而实现定时执行特定的功能。

在VB 程序中,计时器控件是非常常用的一个控件,可以用于各种需要定时操作的场景,比如定时刷新、定时保存等。

要使用计时器控件,首先需要在VB的工具箱中找到计时器控件,然后将其拖放到窗体上。

默认情况下,计时器控件是不可见的,只是作为一个后台的计时器运行。

计时器控件有一些常用的属性和方法可以进行设置和操作,下面我们来介绍一下。

首先是最基本的属性:Interval。

这个属性表示计时器的时间间隔,单位是毫秒。

比如设置为1000,表示每隔一秒触发一次计时器的Tick事件。

可以通过代码直接设置该属性,也可以通过设计界面上的属性窗格进行设置。

其次是Enabled属性,表示是否启用计时器。

通过设置该属性为True或False,可以控制计时器的启用和停用。

需要注意的是,启用计时器之后,计时器才会按照设置的间隔时间触发Tick事件,停用计时器之后,计时器就不会再触发事件。

然后是Tick事件,这个事件是计时器控件的核心事件。

每当计时器达到指定的时间间隔时,就会触发一次Tick事件。

我们可以在这个事件中编写相应的代码来实现我们需要的功能。

比如可以在Tick事件中更新界面上的显示内容、进行定时保存等操作。

另外还有一些其他的属性和方法,例如Tag属性,用于存储一些额外的信息;Start方法,用于手动启动计时器;Stop方法,用于停止计时器。

这些属性和方法都可以根据实际需求进行使用。

Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.TickLabel1.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")End Sub总结来说,计时器控件是VB程序设计中非常常用的一个控件,它可以实现定时操作,通过设置Interval属性和编写Tick事件中的代码,可以实现各种需要定时执行的功能。

VB教程-定时闹钟程序

VB教程-定时闹钟程序
End
End Sub
好了,现在试着运行程序看看。先点击上部的“预设文件”按钮添加一个定时自动运行的程序,然后通过“设定时间”按钮设置好一个时间,这样当时间到达的时候就会自动运行你所需要的这个程序了。
小蘑菇:这倒不错,以后我用电脑学习一段时间之后就可以通过这个程序来定时运行游戏,这样就不会错过休息娱乐的时间了,哈哈。
frmAbout.Show /显示关于对话框
End Sub
7、双击Form1窗口,选择“Load”事件,并输入下列代码:
Private Sub Form_Load()
Command3.Enabled = 0
AlarmTime = "" /初始化时command3为不可用的
Command3.Enabled = -1 /如果label1不为空时,则command3即可用
Else
Exit Sub
End If
End Sub
12、编写deng子程序
Sub deng()
Dim ss
ss = Shell(Label1.Caption, 1) /启动指定的文件,并且结束小闹钟程序
End If
End Sub 9、编写mintime子程序:
Sub mintime()
Caption = Format(Time, "long Time") /使用长时间格式来显示时间
End Sub
10、双击Timer1控件并输入下列代码:
Private Sub Timer1_Timer()
2、在Form1窗口中添加三个Command Button,分别将它们的Caption属性更改为“预设文件”、“设定时间”、“即时启动”和“退出”。

VBA制作简单的闹钟

VBA制作简单的闹钟

VBA制作简单的闹钟
一直想在电脑上放一个闹钟,可以定时提醒我该干什么了,网上也许有,但我想用程序做一个。

第一步,编写一个在固定时间弹出窗口的程序。

这个很简单,一个时间函数,一个消息框,OK。

第二步,让程序引用时间,这样就可以随时更改时间了,才会实用。

这一步稍微复杂了一点,但是也很快解决了。

第三步,让程序中的消息也引用页面信息,有了上一步这个就简单了。

程序完成。

执行一下,成功。

没想到这么简单,让我拖了许久。

A列B列C列
时间事件详细信息
23:14 起床该起床了!
程序:
Sub 时间提醒()
Application.OnTime TimeValue(Range(''A2'').Text), ''显示信息''
End Sub
Sub 显示信息()
msg = MsgBox(Range(''B2'').Text, vbInformation, Range(''C2'').T ext)
End Sub
不能发送附件,只好连代码也写到这里。

这是第一版,以后会继续完善,大家有什么要求?。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用VB设计一个定时闹钟程序
使用win98的人一定知道其中有一个“计划任务"的应用程序,它能够到指定时间便开始工作。

不要认为它很神秘,其实用VB来设计这样一个程序是非常容易的事,以下是一个简单的VB 闹钟程序,可供各位使用VB的朋友参考,如有何不适之处,请多指点!
首先在form1上建立三个命令按钮,分别为command1(打开预启动的文件);command2(设定时间的按钮);第三个command3(即可启动)按钮可有可无;一个label1用来显示你预打开的文件名的路径;一个lbltime用来显示现在的时间;还有一个common dialog,它在工程菜单的部件中,你可把它加到工具箱中再开始使用;关于对话框你不必自己建,只要从应用程序向导中添加即可;一个timer,它的interval=500。

其次在form1的属性中设置为:startupposition=2-centerscreen和maxbutton=false;label1的属性中设置为:alignment=2-center。

外观大致是如图所示:
下面我们开始编程:
Option Explicit
Dim AlarmTime
'申明变量
---------
Private Sub Command1_Click()
Call dialog
'调用dialog子程序
End Sub
--------
Private Sub Command2_Click()
AlarmTime = InputBox(“请输入你想设定的时间,例如(19:12:00)", “小闹钟")
If AlarmTime = “" Then Exit Sub
If Not IsDate(AlarmTime) Then
MsgBox “你所输入的不是时间格式,请重试!", ,“Wrong"
Else
AlarmTime = CDate(AlarmTime)
End If
'判断输入的是否可转换成time格式
'isdate函数是判断输入的是否可转换成date格式
End Sub
--------------
Private Sub Command3_Click()
Call deng
'调用deng子程序
End Sub
---------------
Private Sub Form_Click()
frmAbout.Show
'显示关于对话框
End Sub
-------------
Private Sub Form_Load()
Command3.Enabled = 0
AlarmTime = “"
'初始化时command3为不可用的
End Sub
---------------
Private Sub Form_Resize()
If WindowState = 1 Then
mintime
else
caption=“小闹钟"
End If
'如果窗口被最小化,则调用mintime程序
End Sub
---------------
Private Sub mintime()
Caption = Format(Time, “long Time")
'使用长时间格式来显示时间
End Sub
---------------
Private Sub Timer1_Timer()
If lblTime.Caption <> CStr(Time) Then
lblTime.Caption = Time
End If
'显示时间每秒钟的变化
If Time >= AlarmTime Then
Call deng
End If
'判断如果现在的时间超过了设定的时间,则调用deng子程序If WindowState = 1 Then
If Minute(CDate(Caption)) <> Minute(Time) Then
mintime
End If
End If
'最小化时显示时间每分钟的变化
End Sub
-------------
Sub dialog()
CommonDialog1.Flags = cdlCFBoth
CommonDialog1.ShowOpen
Label1.Caption = CommonDialog1.filename
If Label1 <> “" Then
Command3.Enabled = -1
Else
Exit Sub
End If
'把打开的文件名给于label1
'如果label1不为空时,则command3即可用
End Sub
--------------
Sub deng()
Dim ss
ss = Shell(Label1.Caption, 1)
End
'启动指定的文件,并且结束小闹钟程序
End Sub
最后在about对话框中要提的是:在form_load中app.title表示你的应用程序的名字;app.major、minor、revision是关于应用程序的版本信息;lblDescription.Caption 用于对本程序的一些说明描述之类的话;lblDisclaimer.Caption用于版权信息或警告等。

好了,至此我们已完成了一个简单的VB程序的编写,希望你能设计出更好的闹钟程序来!
以上在windows98,中文VB5.0企业版中通过。

相关文档
最新文档