在好例子网,分享、交流、成长!
您当前所在位置:首页Others 开发实例一般编程问题 → VB定时关机程序

VB定时关机程序

一般编程问题

下载此实例
  • 开发语言:Others
  • 实例大小:0.75KB
  • 下载次数:8
  • 浏览次数:379
  • 发布时间:2018-11-10
  • 实例类别:一般编程问题
  • 发 布 人:3232
  • 文件格式:.vbp
  • 所需积分:18
 相关标签: VB定时关机

实例介绍

【实例简介】

【实例截图】

【核心代码】

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定时关机

实例下载地址

VB定时关机程序

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警