WM_RBUTTONDOWN Notification
WM_RBUTTONDOWN Notification

The WM_RBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is in the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, the message is posted to the window that has captured the mouse.

A window receives this message through its WindowProc function.

Syntax

WM_RBUTTONDOWN

    WPARAM wParam
    LPARAM lParam;
    

Parameters

wParam
Indicates whether various virtual keys are down. This parameter can be one or more of the following values.
MK_CONTROL
The CTRL key is down.
MK_LBUTTON
The left mouse button is down.
MK_MBUTTON
The middle mouse button is down.
MK_RBUTTON
The right mouse button is down.
MK_SHIFT
The SHIFT key is down.
MK_XBUTTON1
Windows 2000/XP: The first X button is down.
MK_XBUTTON2
Windows 2000/XP: The second X button is down.
lParam
The low-order word specifies the x-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.

The high-order word specifies the y-coordinate of the cursor. The coordinate is relative to the upper-left corner of the client area.

Return Value

If an application processes this message, it should return zero.

Remarks

Use the following code to obtain the horizontal and vertical position:

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

You can also use the MAKEPOINTS macro to convert the lParam parameter to a POINTS structure.

To detect that the ALT key was pressed, check whether GetKeyState(VK_MENU) < 0. Note, this must not be GetAsyncKeyState.

Notification Requirements

Minimum DLL Version None
HeaderDeclared in Winuser.h, include Windows.h
Minimum operating systems Windows 95, Windows NT 3.1

See Also

Community Content

Value
Added by:Thomas Lee
void
CKtoolDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
CDialog::OnRButtonDown(nFlags, point);
}

Error c2039
Added by:Thomas Lee

void

CKtoolDlg::OnRButtonDown(UINT nFlags, CPoint point)

{

CDialog::OnRButtonDown(nFlags, point);

}

error C2039: 'OnRButtonDown' : is not a member of 'CDialog'

how I solve this problem

Beispiel Code (bei Maustaste rechts down)
Added by:jk79
  
case WM_RBUTTONDOWN:
{
int mx = LOWORD(lParam);
int my = HIWORD(lParam);
int taste = wParam;
Maus.X_alt = Maus.X;
Maus.Y_alt = Maus.Y;
Maus.X = mx;
Maus.Y = my;
if (taste == MK_LBUTTON) {Maus.Links = true; Maus.LinksGed = true; }
if (taste == MK_RBUTTON) {Maus.Rechts = true; Maus.RechtsGed = true; }
if (taste == MK_MBUTTON) {Maus.Mitte = true; Maus.MitteGed = true; }
}
break;
© 2009 Microsoft Corporation. All rights reserved.   Terms of Use | Trademarks | Privacy Statement
Page view tracker
Rate the Lightweight library
x
Lightweight builds on ScriptFree (loband) by adding features you've requested: a SearchBox and default code language selection.
Do you like the SearchBox?
Do you like the tabbed code blocks?
How useful is this topic?
Tell us more.
Thanks
x
You're helping to improve MSDN Online.
Feedback
Switch View
Classic
Lightweight Beta
ScriptFree
Switch View