ross_liu 2019-01-12 18:25 采纳率: 20%
浏览 770
已采纳

vb.net如何在timer里面增加click事件

产线生产,每个产品之间必须隔20秒。防止作业时间太短;
我先写了一个click,每次都click一下。如果button是绿色就代表超过了20秒
可以刷产品了;红色代表没有超过20秒还不能刷;
以上的代码已经写出来了;
我想增加一个timer。来实时监控这个产品是否间隔20秒。这个问题还没解决。
请大神帮忙解决!!非常感谢

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-01-12 20:37
    关注

    <- 如果问题得到解决,请点我回答左上角的采纳和向上的箭头,谢谢

    Public Class Form1
    
        Private span As Integer = 3 '间隔时间3秒,这是为了演示方便,实际你修改为20
        Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
            For Each btn As Button In Controls.OfType(Of Button)()
                Dim dt1 = CType(btn.Tag, DateTime)
                Dim dt2 = DateTime.Now
                If (New TimeSpan(dt2.Ticks - dt1.Ticks).TotalSeconds > span) Then
                    btn.BackColor = Color.Green
                    btn.Enabled = True
                Else
                    btn.BackColor = Color.Red
                    btn.Enabled = False
                End If
            Next
        End Sub
        Private Sub btnClick(sender As Object, e As EventArgs)
            CType(sender, Button).Tag = DateTime.Now
            CType(sender, Button).Enabled = False
        End Sub
        Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            For Each btn As Button In Controls.OfType(Of Button)()
                btn.Tag = DateTime.Now.AddSeconds(-span)
                AddHandler btn.Click, AddressOf btnClick
            Next
        End Sub
    End Class
    
    

    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料