实例介绍
【实例截图】
【核心代码】
Private Sub DateTime() Dim i As Integer, k1$, k2$ k1 = GetIniS("参数设置", "开始年份", "") '获取设置的参数 k2 = GetIniS("参数设置", "结束年份", "") If k1 = "" Then '如果没有设置参数,则选择默认2014-2099 k1 = 2014 k2 = 2099 End If For i = k1 To k2 '年日期 Combo1.AddItem i Next i Combo1.ListIndex = 0 For i = 1 To 12 '月日期 Combo2.AddItem i Next i Combo2.ListIndex = 8 For i = 1 To 31 '日 Combo3.AddItem i Next i Combo3.ListIndex = 10 For i = 0 To 23 '时 Combo4.AddItem i Next i Combo4.ListIndex = 11 For i = 0 To 59 '分 Combo5.AddItem i Next i Combo5.ListIndex = 45 For i = 0 To 59 '秒 Combo6.AddItem i Next i Combo6.ListIndex = 33 End Sub Private Sub Command1_Click() '时间同步 Combo1 = Text1: Combo2 = Text2: Combo3 = Text3: Combo4 = Text4: Combo5 = Text5: Combo6 = Text6 Label13 = "执行了【同步时间】" End Sub Private Sub Command2_Click() '打开参数设置选项 Form2.Show Label13 = "执行了【参数设置】" End Sub Private Sub Command3_Click() '定时关机生效,按钮变灰色 Combo1.Enabled = False Combo2.Enabled = False Combo3.Enabled = False Combo4.Enabled = False Combo5.Enabled = False Combo6.Enabled = False Option1.Enabled = False Option2.Enabled = False Timer2.Enabled = True Command3.Enabled = False Label13 = "定时关机执行中……" Timer3.Enabled = True End Sub Private Sub Command4_Click() '定时关机-重设,生效按钮变非灰色 Timer2.Enabled = False Combo1.Enabled = True Combo2.Enabled = True Combo3.Enabled = True Combo4.Enabled = True Combo5.Enabled = True Combo6.Enabled = True Option1.Enabled = True Option2.Enabled = True Command3.Enabled = True Timer3.Enabled = False Label13 = "定时关机被重置……(请重新设定)" End Sub Private Sub Command5_Click() End End Sub Private Sub Form_Load() Call DateTime '加载定时关机数据 End Sub Private Sub Label13_Click() MsgBox "定时关机程序 - Version 1.0 " & vbCrLf & _ "" & vbCrLf & _ " 《望岳》 " & vbCrLf & _ "岱宗夫如何,齐鲁青未了。 " & vbCrLf & _ "造化钟神秀,阴阳割昏晓。 " & vbCrLf & _ "荡胸生层云,决眦入归鸟。 " & vbCrLf & _ "会当凌绝顶,一览众山小。 " & vbCrLf & _ "" & vbCrLf & _ "特别鸣谢:[大器团队]" & vbCrLf & _ " " & vbCrLf & _ "E-mail:linghan0001@qq.com " & vbCrLf & _ "" & vbCrLf & _ "【勇气|专业|坚持|挑战】" & vbCrLf & _ "" & vbCrLf & _ gy, vbOKOnly vbInformation, "凌寒作品" End Sub Private Sub Timer1_Timer() '当前时间 Text1 = Year(Date) Text2 = Month(Date) Text3 = Day(Date) Text4 = Hour(Time) Text5 = Minute(Time) Text6 = Second(Time) End Sub Private Sub Timer2_Timer() '定时关机或重启 If Combo1 = Text1 And Combo2 = Text2 And Combo3 = Text3 And Combo4 = Text4 And Combo5 = Text5 And Combo6 = Text6 Then If Option1.Value = True Then Shell "shutdown.exe -f -s -t 0", vbHide '0秒后强制关机 If Option2.Value = True Then Shell "shutdown.exe -f -r -t 0", vbHide '马上重启 End If End Sub Private Sub Timer3_Timer() Static G1, G2, G3, G4, G5, G6 Dim GJ$, GC$ G1 = Val(Combo1.Text) - Val(Text1.Text) G2 = Val(Combo2.Text) - Val(Text2.Text) G3 = Val(Combo3.Text) - Val(Text3.Text) G4 = Val(Combo4.Text) - Val(Text4.Text) G5 = Val(Combo5.Text) - Val(Text5.Text) G6 = Val(Combo6.Text) - Val(Text6.Text) 'G1为设置的年份数与当前实际年份数之差。G2为月份之差。G3为日,G4为时,G5为分,G6为秒 '-------------------------------------------------------------------------- If G6 < 0 Then G6 = G6 60: G5 = G5 - 1 If G5 < 0 Then G5 = G5 60: G4 = G4 - 1 If G4 < 0 Then G4 = G4 24: G3 = G3 - 1 If G3 < 0 Then G3 = G3 30: G2 = G2 - 1 If G2 < 0 Then G2 = G2 12: G1 = G1 - 1 '先从秒数开始算起,如果不够,则向分钟借。分钟不够则向小时借,小时不够则向天数借 '一定要注意要先从秒数开始借,否则借出来的结果会出错! '需要注意的是借数的单位换算!! '--------------------------------------------------------------------------- If G1 > 0 Then GJ = G1 & " 年 " & G2 & " 月 " & G3 & " 日 " & G4 & " 时 " & G5 & " 分 " & G6 & " 秒 " ElseIf G2 > 0 Then GJ = G2 & " 月 " & G3 & " 日 " & G4 & " 时 " & G5 & " 分 " & G6 & " 秒 " ElseIf G3 > 0 Then GJ = G3 & " 日 " & G4 & " 时 " & G5 & " 分 " & G6 & " 秒 " ElseIf G4 > 0 Then GJ = G4 & " 时 " & G5 & " 分 " & G6 & " 秒 " ElseIf G5 > 0 Then GJ = G5 & " 分 " & G6 & " 秒 " ElseIf G6 > 0 Then GJ = G6 & " 秒 " End If '如果年份大于0则全显示,如果年份小于或等于0则执行下一条命令,当前命令跳过 'if ……elseif 的用法:程序先从第一条命令开始检验,如果符合,则执行,余下的elseif则跳过 '如果第一个if不符合条件,则跳到第二条命令进行检测。条件符合则执行,然后跳出if循环。 '全部都不符合则全部都不会执行。 '------------------------------------------------------------------------------------------- If G1 < 0 Then GJ = "【日期时间设置错误!!请重新设定!!!】" '当年份数不足时显示错误信息! If Option1.Value = True Then GC = "【关机】" If Option2.Value = True Then GC = "【重启】" Label13 = "还剩:" & GJ & GC End Sub Private Sub Command1_Click() SetIniS "参数设置", "开始年份", Text1 SetIniS "参数设置", "结束年份", Text2 Unload Form1 MsgBox "年份设置修改成功!", vbOKOnly, "提示" Form1.Show End Sub Private Sub Command2_Click() SetIniS "参数设置", "开始年份", "" SetIniS "参数设置", "结束年份", "" Unload Form1 '卸载定时关机主窗体 MsgBox "已经恢复默认设置!", vbOKOnly, "提示" Form1.Show '重新装载定时关机主窗体,目的:刷新年份数据 End Sub
标签: VB定时关机
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论