• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 305
  • Last Modified:

Timer for Single Click and Double Click

I am making an MFC application that allows the user to draw in a system that I will analyze.  The user will use the left mouse button and right mouse button to draw the system (single click and drag).  The user will double-click with the left mouse button in order for a dialog box to pop-up for the user to enter the item's data.  My problem is when I double click with the left mouse button, the LeftMouseButtonDown function is called before the LeftMouseButtonDoublClick function.  This is causing me great pain b/c it executes code that I don't want it to.  I need some sort of timer to make the OnLeftButtonDown function wait to see if the user is double-clicking before calling that function.  Help ME!!!!
0
stchsc
Asked:
stchsc
1 Solution
 
chensuCommented:
You can use the GetDoubleClickTime function retrieves the current double-click time for the mouse. In your OnLButtonDown, set a one shot timer using the timeSetEvent function. In your OnLButtonDblClk, set a flag to indicate if it is a double-click. When the timer callback function is called, check the flag and do your LeftMouseButtonDown function if it is not a double-click. This is just a rough design.
0
 
stchscAuthor Commented:
Thanks for your reply.  However, I thought of a way around it.  It is similar to what you have suggested.  Thanks for the input.
0

Featured Post

Upgrade your Question Security!

Your question, your audience. Choose who sees your identity—and your question—with question security.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now