我需要在计时器运行时禁用一个功能

时间:2013-01-05 19:12:13

标签: vb.net function timer

我正在开发一个用于图像托管网站的项目,我需要找到一种方法,以便当用户按下热键调用某个函数时,它将触发一个定时器,持续x秒,这将禁用该被召唤的功能。

我已经有了功能设置和热键所有我需要添加的功能是禁止在定时器内调用该功能。有任何想法吗?或者有可能吗?

最好的问候&非常感谢,Aurora

2 个答案:

答案 0 :(得分:1)

最简单的方法是在启动Timer之前设置一个布尔变量,然后在Timer的Tick EventHandler中重置它。

这样的事情:

Public Class Form1
    Dim disableFunction As Boolean = False
    Public Sub New()

        ' This call is required by the designer.
        InitializeComponent()

        ' Add any initialization after the InitializeComponent() call.
        Timer1.Interval = 2000 '2 second wait time
    End Sub

    Private Sub Timer1_Tick(sender As System.Object, e As System.EventArgs) Handles Timer1.Tick
        Timer1.Stop()
        disableFunction = False
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        If disableFunction Then Exit Sub
        disableFunction = True
        Timer1.Start()
    End Sub
End Class

答案 1 :(得分:0)

Dim run As Boolean
Sub tick() Handles Timer.Tick
    If run Then
        callfunction()
    End If
End Sub