2010-07-20 4 views
2

J'écris une application (en C++) qui utilise WM_LBUTTONDBLCLK.Je ne reçois pas toujours WM_LBUTTONDBLCLK

Tout fonctionne bien sauf mais je ne reçois pas toujours le message DBLCLK. Assez souvent, je reçois deux messages WM_LBUTTONDOWN à la place.

J'ai regardé la position de la souris - elle ne bouge pas.

J'ai regardé le temps entre les deux messages WM_LBUTTONDOWN - il est bien dans la valeur retournée par GetDoubleClickTime()

Je retourne 0 pour WM_LBUTTONDOWN, WM_LBUTTONUP et WM_LBUTTONDBLCLK.

Qu'est-ce qui causerait cela? Je suis perplexe. PS: J'ai essayé Windows XP et 7 - même résultat.

+1

Est-ce que votre fenêtre a le style CS_DBLCLKS? –

Répondre

4

Pour provoquer des cas WM_RBUTTONDBLCLK et WM_LBUTTONDBLCLK au lieu de 2 paires de buttondown et ups, vous devez ajouter CS_DBLCLKS dans votre style Windows.

Questions connexes