这个程序用于定时 *** 作。
其实这份代码个人觉得效率不够高,本人暂时没空优化,不好意思,那位朋友看后有建议的可以联系我。
mailto:wangjingkaibear@live.cn
以下是代码
原本是在Visual Basic 2008 环境下编写的,但回去时装了Visual Basic 2010,它把代码升级了,我看起来好像没变化,不知道怎样。代码有很多用了.net Framework 3.5的标准,所以需要.net Framework3.5支持,请注意。
Public Class Main '添加工具提示 Private Sub Me_Load(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles MyBase.Load Me.HIDe() If My.Computer.fileSystem.fileExists(Application.StartupPath & "/zh-CN/时间使者 Free Edition.resources.dll") = True Then Me.Show() Else MsgBox("程序检测到程序文件夹‘zh-CN’中的‘时间使者 Free Edition.resources.dll’文件不存在或名称改变,请将文件名改回‘时间使者 Free Edition.resources.dll’或重新安装软件",MsgBoxStyle.OkOnly,"启动错误") Me.Close() End If Dim tooltip1 As New tooltip tooltip1.Settooltip(TX_T_SJ1,"这里应该输入完整的时间,即闹钟响起的时间。(输入格式:HH:mm:ss,24小时制)") tooltip1.Settooltip(TX_T_JG1,"输入一个时间间隔,即在从现在起再过这个时间后,闹钟响起。(单位:秒)") tooltip1.Settooltip(DSGJ_T_SJ1,"这里应该输入完整的时间,即关机的时间。(输入格式:HH:mm:ss,24小时制)") tooltip1.Settooltip(DSGJ_T_YC1,"非必要") End Sub '获取系统时间并显示 Private Sub HQSJ11_Tick(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles HQSJ1.Tick Dim time1 As DateTime time1 = My.Computer.Clock.LocalTime.TolongTimeString DQSJ1.Text = time1 End Sub '闹钟提醒键变化 Private Sub tixing1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles tixing1.Click If Me.Height = 178 Then Me.Height = 420 tixing1.Text = "闹钟提醒 ∧" DSGJ1.Enabled = False Else Me.Height = 178 If DSGJ_B_QX1.Enabled = False Then '判断定时关机是否未开启 DSGJ1.Enabled = True End If TX_C_FS1.Checked = False TX_C_FS2.Checked = False TX_T_SJ1.Text = "请填入完整时间" TX_T_JG1.Text = "请填入时间间隔" TX_T_XX1.Text = "" tixing1.Text = "闹钟提醒 ∨" End If End Sub '定时关机键变化 Private Sub DSGJ1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ1.Click Dim XT2 As String If Me.WIDth = 317 Then Me.WIDth = 553 XT2 = My.Settings.GJ_XT1 If XT2 <> "" Then If XT2 = "1" Then DSGJ_C_XT1.Checked = True Else DSGJ_C_XT2.Checked = True End If End If tixing1.Enabled = False DSGJ1.Text = "定时关机<" Else Me.WIDth = 317 DSGJ_T_SJ1.Text = "请填入完整时间" DSGJ_T_YC1.Text = "" DSGJ_C_XT1.Checked = False DSGJ_C_XT1.Checked = False If TX_B_QX1.Enabled = False Then '判断闹钟提醒是否未开启 tixing1.Enabled = True End If DSGJ1.Text = "定时关机>" End If End Sub '设置按钮 Private Sub Setting1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Setting1.Click Me.Enabled = False Setting.Show() End Sub '时间计算器按钮变化 Private Sub TX_B_SJZHQ1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_B_SJZHQ1.Click If Me.Height = 420 Then Me.Height = 517 Else Me.Height = 420 End If TX_T_XS1.Text = "" TX_T_FZ1.Text = "" End Sub '方式选择及控件开启 Private Sub TX_C_FS1_CheckedChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_C_FS1.CheckedChanged If TX_C_FS1.Checked = True Then TX_T_SJ1.Enabled = True TX_T_XX1.Enabled = True Else TX_T_SJ1.Text = "请填入完整时间" TX_T_SJ1.Forecolor = color.Gray TX_T_SJ1.Enabled = False TX_B_KQ.Enabled = False TX_T_XX1.Enabled = False End If End Sub Private Sub TX_C_FS2_CheckedChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_C_FS2.CheckedChanged If TX_C_FS2.Checked = True Then TX_T_JG1.Enabled = True TX_T_XX1.Enabled = True Else TX_T_JG1.Text = "请填入时间间隔" TX_T_JG1.Forecolor = color.Gray TX_T_JG1.Enabled = False TX_B_KQ.Enabled = False TX_T_XX1.Enabled = False End If End Sub '提醒时间文本框变化的相关影响 Private Sub TX_T_SJ1_TextChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_T_SJ1.TextChanged If TX_T_SJ1.Text = "" Or TX_T_SJ1.Text = "请填入完整时间" Then TX_B_KQ.Enabled = False Else TX_B_KQ.Enabled = True End If End Sub '提醒间隔文本框变化的相关影响 Private Sub TX_T_JG1_TextChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_T_JG1.TextChanged If TX_T_JG1.Text = "" Or TX_T_JG1.Text = "请填入时间间隔" Then TX_B_KQ.Enabled = False Else TX_B_KQ.Enabled = True End If End Sub '闹钟提醒俩文本框鼠标按下事件 Private Sub TX_T_SJ1_MouseDown(ByVal sender As System.Object,ByVal e As System.windows.Forms.MouseEventArgs) Handles TX_T_SJ1.MouseDown If TX_T_SJ1.Text = "请填入完整时间" Then TX_T_SJ1.Text = "" TX_T_SJ1.Forecolor = color.RoyalBlue End If End Sub Private Sub TX_T_JG1_MouseDown(ByVal sender As System.Object,ByVal e As System.windows.Forms.MouseEventArgs) Handles TX_T_JG1.MouseDown If TX_T_JG1.Text = "请填入时间间隔" Then TX_T_JG1.Text = "" TX_T_JG1.Forecolor = color.RoyalBlue End If End Sub '闹钟提醒开启事件 Private Sub TX_B_KQ_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_B_KQ.Click Dim instance As DateTime Dim value As Double Dim returnValue As DateTime If TX_C_FS1.Checked = True Then My.Settings.TX_SJ1 = TX_T_SJ1.Text My.Settings.TX_XX1 = TX_T_XX1.Text TX_L_Show.Text = "已开启的闹钟提醒:" & TX_T_SJ1.Text TX_T_SJ1.Text = "请填入完整时间" Else instance = DQSJ1.Text value = TX_T_JG1.Text returnValue = instance.AddMinutes(value) My.Settings.TX_JG1 = returnValue My.Settings.TX_XX1 = TX_T_XX1.Text TX_L_Show.Text = "已开启的闹钟提醒:" & returnValue TX_T_JG1.Text = "请填入时间间隔" End If Me.Height = 176 TX_T_XX1.Text = "" TX_C_FS1.Checked = False TX_C_FS2.Checked = False tixing1.Text = "闹钟提醒 ∨" tixing1.Enabled = False TX_B_QX1.Enabled = True If DSGJ_B_QX1.Enabled = False Then DSGJ1.Enabled = True End If End Sub Private Sub TX_Timer1_Tick(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_Timer1.Tick If DQSJ1.Text = My.Settings.TX_SJ1 Or DQSJ1.Text = My.Settings.TX_JG1 Then If My.Settings.MusicPath1 = "" Then My.Computer.Audio.Play(Application.StartupPath & "/Resources/Background1.wav") Else My.Computer.Audio.Play(My.Settings.MusicPath1) End If If My.Settings.TX_XX1 = "" Then MsgBox("提醒信息:" & "喂喂,时间到了!该干啥干啥去。","闹钟响起") Else MsgBox("提醒信息:" & My.Settings.TX_XX1,"闹钟响起") End If tixing1.Enabled = True TX_L_Show.Text = "已开启的闹钟提醒:无" My.Settings.TX_SJ1 = "" My.Settings.TX_JG1 = "" My.Settings.TX_XX1 = "" End If End Sub Private Sub DSGJ_T_SJ1_MouseDown(ByVal sender As System.Object,ByVal e As System.windows.Forms.MouseEventArgs) Handles DSGJ_T_SJ1.MouseDown If DSGJ_T_SJ1.Text = "请填入完整时间" Then DSGJ_T_SJ1.Text = "" DSGJ_T_SJ1.Forecolor = color.RoyalBlue End If End Sub Private Sub DSGJ_T_SJ1_TextChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ_T_SJ1.TextChanged If DSGJ_C_XT1.Checked = True Or DSGJ_C_XT2.Checked = True Then DSGJ_B_DSKQ1.Enabled = True Else DSGJ_B_DSKQ1.Enabled = False End If End Sub Private Sub DSGJ_C_XT1_CheckedChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ_C_XT1.CheckedChanged If DSGJ_C_XT1.Checked = True And DSGJ_T_SJ1.Text = "" Or DSGJ_C_XT1.Checked = True And DSGJ_T_SJ1.Text = "请填入完整时间" Then DSGJ_B_DSKQ1.Enabled = False Else DSGJ_B_DSKQ1.Enabled = True End If End Sub Private Sub DSGJ_C_XT2_CheckedChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ_C_XT2.CheckedChanged If DSGJ_C_XT2.Checked = True And DSGJ_T_SJ1.Text = "" Or DSGJ_C_XT2.Checked = True And DSGJ_T_SJ1.Text = "请填入完整时间" Then DSGJ_B_DSKQ1.Enabled = False Else DSGJ_B_DSKQ1.Enabled = True End If End Sub Private Sub DSGJ_B_DSKQ1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ_B_DSKQ1.Click If DSGJ_T_SJ1.Text = "" Then MsgBox("请填入时间!","定时关机") Else My.Settings.GJ_SJ1 = DSGJ_T_SJ1.Text My.Settings.GJ_YC1 = DSGJ_T_YC1.Text If DSGJ_C_XT1.Checked = True Then My.Settings.GJ_XT1 = "1" Else My.Settings.GJ_XT1 = "2" End If DSGJ_L_Show.Text = "已开启的定时关机:" & DSGJ_T_SJ1.Text Me.WIDth = 315 DSGJ1.Text = "定时关机>" DSGJ1.Enabled = False If TX_B_QX1.Enabled = False Then tixing1.Enabled = True End If DSGJ_B_QX1.Enabled = True End If DSGJ_T_SJ1.Text = "请填入完整时间" DSGJ_T_YC1.Text = "" End Sub Private Sub DSGJ_Timer1_Tick(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ_Timer1.Tick Dim systemD As String Dim arguments As String Dim returnValue As Process If DQSJ1.Text = My.Settings.GJ_SJ1 Then If My.Settings.GJ_XT1 = "1" Then systemD = System.Environment.SystemDirectory arguments = "-s -t " & My.Settings.GJ_YC1 My.Settings.GJ_SJ1 = "" My.Settings.GJ_YC1 = "" returnValue = Process.Start(systemD & "/shutdown.exe",arguments) Else systemD = System.Environment.SystemDirectory arguments = "/s /t " & My.Settings.GJ_YC1 My.Settings.GJ_SJ1 = "" My.Settings.GJ_YC1 = "" returnValue = Process.Start(systemD & "/shutdown.exe",arguments) End If End If End Sub Private Sub TX_B_SJZHQ2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_B_SJZHQ2.Click If TX_T_XS1.Text = "" Then MsgBox("请输入值!","错误") Else TX_T_FZ1.Text = TX_T_XS1.Text * 60 End If End Sub Private Sub TX_T_XS1_TextChanged(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_T_XS1.TextChanged If TX_T_XS1.Text = "" Then TX_T_FZ1.Text = "" End If End Sub Private Sub TX_B_QX1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TX_B_QX1.Click TX_L_Show.Text = "已开启的闹钟提醒:无" tixing1.Enabled = True My.Settings.TX_SJ1 = "" My.Settings.TX_JG1 = "" My.Settings.TX_XX1 = "" TX_B_QX1.Enabled = False End Sub Private Sub DSGJ_B_QX1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles DSGJ_B_QX1.Click DSGJ_L_Show.Text = "已开启的定时关机:无" DSGJ1.Enabled = True My.Settings.GJ_SJ1 = "" My.Settings.GJ_XT1 = "" My.Settings.GJ_YC1 = "" DSGJ_B_QX1.Enabled = False End Sub Private Sub Aboutbutton1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles Aboutbutton1.Click About.Show() End SubEnd Class总结
以上是内存溢出为你收集整理的[VB.net]Timer核心源代码(时间使者)全部内容,希望文章能够帮你解决[VB.net]Timer核心源代码(时间使者)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)