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!!!!
stchscAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

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

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
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
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
System Programming

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.