WM_NCMBUTTONDBLCLK
nHittest = (INT) wParam; /* hit-test code */
pts = MAKEPOINTS(lParam); /* mouse-cursor coordinates */
The WM_NCMBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the mouse cursor is within the nonclient area of a window. This message is posted to the window that contains the mouse cursor. If a window has the mouse captured, this message is not posted.
nHittest
Value of wParam. Specifies the hit-test code returned by the DefWindowProc function as a result of processing the WM_NCHITTEST message. For more information, see the description of the WM_NCHITTEST message.
pts
Value of lParam. Specifies a POINTS structure that contains the x- and y-coordinates of the mouse cursor. The coordinates are relative to the upper-left corner of the screen. The POINTS structure has the following form:
typedef struct tagPOINTS { /* pts */
SHORT x;
SHORT y;
} POINTS;
An application should return zero if it processes this message.
A window need not have the CS_DBLCLKS style to receive WM_NCMBUTTONDBLCLK messages.
Windows generates a WM_NCMBUTTONDBLCLK message when the user presses, releases, and again presses the middle mouse button within the system's double-click time limit. Double-clicking the middle mouse button actually generates four messages: a WM_NCMBUTTONDOWN message, a WM_NCMBUTTONUP message, the WM_NCMBUTTONDBLCLK message, and another WM_NCMBUTTONUP message.
An application can use the MAKEPOINTS macro to convert the lParam parameter to a POINTS structure.
If appropriate, WM_SYSCOMMAND messages are sent.
DefWindowProc, WM_NCHITTEST, WM_NCMBUTTONDOWN, WM_NCMBUTTONUP, WM_SYSCOMMAND