Partager via


message WM_NCXBUTTONDBLCLK

Publié lorsque l’utilisateur double-clique sur XBUTTON1 ou XBUTTON2 pendant que le curseur se trouve dans la zone non cliente d’une fenêtre. Ce message est publié dans la fenêtre qui contient le curseur. Si une fenêtre a capturé la souris, ce message n’est pas publié.

Une fenêtre reçoit ce message via sa fonction WindowProc.

#define WM_NCXBUTTONDBLCLK              0x00AD

Paramètres

wParam

Le mot de faible ordre spécifie la valeur de test d’accès retournée par la fonction DefWindowProc du traitement du message WM_NCHITTEST. Pour obtenir la liste des valeurs de test de positionnement, consultez WM_NCHITTEST.

Le mot à ordre élevé indique le bouton qui a été double-cliqué. Il peut s’agir de l’une des valeurs suivantes.

Valeur Signification
XBUTTON1
0x0001
Le XBUTTON1 a été double-cliqué..
XBUTTON2
0x0002
La deuxième XBUTTON2 a été double-cliqué.

lParam

Pointeur vers une structure POINTS qui contient les coordonnées x et y du curseur. Les coordonnées sont relatives au coin supérieur gauche de l’écran.

Valeur de retour

Si une application traite ce message, elle doit retourner TRUE. Pour plus d’informations sur le traitement de la valeur de retour, consultez la section Remarques.

Remarques

Windows prend en charge les souris avec jusqu’à cinq boutons : gauche, milieu et droit, ainsi que deux boutons supplémentaires appelés XBUTTON1 et XBUTTON2. Les boutons XBUTTON1 et XBUTTON2 sont souvent situés sur les côtés de la souris, près de la base. Ces boutons supplémentaires ne sont pas présents sur toutes les souris. S’il est présent, les boutons XBUTTON1 et XBUTTON2 sont souvent mappés à une fonction d’application, comme la navigation vers l’avant et l’arrière dans un navigateur Web.

Utilisez le code suivant pour obtenir les informations dans le paramètre wParam.

nHittest = GET_NCHITTEST_WPARAM(wParam); 
fwButton = GET_XBUTTON_WPARAM(wParam); 

Vous pouvez également utiliser le code suivant pour obtenir les coordonnées x et y de lParam:

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

Important

N’utilisez pas les LOWORD ou macros HIWORD pour extraire les coordonnées x et y de la position du curseur, car ces macros retournent des résultats incorrects sur les systèmes avec plusieurs moniteurs. Les systèmes avec plusieurs moniteurs peuvent avoir des coordonnées x et y négatives, et LOWORD et HIWORD traiter les coordonnées comme des quantités non signées.

Par défaut, la fonction DefWindowPro c teste le point spécifié pour obtenir la position du curseur et effectuer l’action appropriée. Le cas échéant, il envoie le message WM_SYSCOMMAND à la fenêtre.

Une fenêtre n’a pas besoin du style CS_DBLCLKS pour recevoir des messages WM_NCXBUTTONDBLCLK. Le système génère un message WM_NCXBUTTONDBLCLK lorsque l’utilisateur appuie, relâche et appuie à nouveau sur un XBUTTON dans la limite de temps double-clic du système. Double-cliquez sur l’un de ces boutons génère en fait quatre messages : WM_NCXBUTTONDOWN, WM_NCXBUTTONUP, WM_NCXBUTTONDBLCLKet WM_NCXBUTTONUP à nouveau.

Contrairement aux messages WM_NCLBUTTONDBLCLK, WM_NCMBUTTONDBLCLKet WM_NCRBUTTONDBLCLK, une application doit retourner TRUE à partir de ce message s’il le traite. Cela permet aux logiciels qui simulent ce message sur les systèmes Windows antérieurs à Windows 2000 de déterminer si la procédure de fenêtre a traité le message ou appelé DefWindowProc pour le traiter.

Exigences

Exigence Valeur
Client minimum pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimum pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Winuser.h (inclure Windowsx.h)

Voir aussi

de référence

DefWindowProc

GET_X_LPARAM

GET_Y_LPARAM

WM_NCHITTEST

WM_NCXBUTTONDOWN

WM_NCXBUTTONUP

WM_SYSCOMMAND

conceptuelle

d’entrée de la souris

autres ressources

MAKEPOINTS

POINTS