Click here to Skip to main content
15,881,852 members
Articles / Programming Languages / Visual Basic
Tip/Trick

Click or DoubleClick

Rate me:
Please Sign up or sign in to vote.
5.00/5 (3 votes)
24 Sep 2013CPOL 18K   7   4
This code processes a Click or a DoubleClick event.

Introduction

I wanted to have a control that will process a Click event or a DoubleClick event.  All the solutions I could find on the internet used a rather complicated rollback process.  This is a very simple solution that could be understood by just about anybody.

Using the code

The form uses a label for the control. Just Click or DoubleClick on the label to try it out.  The code has a constant to enable the DoubleClick speed to be altered. 

VB
Public Class frmClickDoubleClick

  Const DOUBLE_CLICK_SPEED As Integer = 250   'mouse DoubleClick speed
  Dim isDoubleTriggered As Boolean = False

  Private Sub labLabel_Click(ByVal sender As Object, _
          ByVal e As System.EventArgs) Handles labLabel.Click
    'delay (250ms) to make sure the DoubleClick code triggers first
    System.Threading.Thread.Sleep(DOUBLE_CLICK_SPEED)
    System.Windows.Forms.Application.DoEvents()

    If isDoubleTriggered Then
    'if DoubleClick event triggered then supress the SingleClick code
      isDoubleTriggered = False
      'reset the DoubleClick flag
      Exit Sub
    End If

    Me.BackColor = Color.Coral              'SingleClick code
    Me.Text = "Single Click"
  End Sub

  Private Sub labLabel_DoubleClick(ByVal sender As Object, _
              ByVal e As System.EventArgs) Handles labLabel.DoubleClick
    isDoubleTriggered = True                   'flag the DoubleClick event
    Me.BackColor = Color.Aquamarine            'DoubleClick code
    Me.Text = "Double Click"
  End Sub

End Class 

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
Systems Engineer
New Zealand New Zealand
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
QuestionExcellent Pin
David Stocks 202126-Sep-22 7:34
David Stocks 202126-Sep-22 7:34 
PraiseGreat solution for a tricky problem. Pin
Gerry4729-Apr-20 15:06
Gerry4729-Apr-20 15:06 
QuestionWhat about getting MouseEventArgs? Pin
Member 988791128-Nov-16 21:19
Member 988791128-Nov-16 21:19 
GeneralMy vote of 5 Pin
Carlos190724-Sep-13 0:54
professionalCarlos190724-Sep-13 0:54 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.