Programming User Interaction > Programming Actions > Determining Action Mappings |
To determine which action is mapped to a particular Microsoft Windows message, use the Item property, which is defined by the ActionMaps collection. For example, the following statement returns the action performed when the left mouse button is clicked:
Dim LeftMouse As Object
Set LeftMouse = Chart2D1.ActionMaps.Item WM_LBUTTONDOWN, 0, 0
An exception is generated if no action is mapped to a particular message.
By default, the following action maps are defined (message and modifier flags shown):
WM_MBUTTONDOWN, MK_MBUTTON,0 |
oc2dActionModifyStart (start rotation) |
WM_MBUTTONDOWN, MK_MBUTTON+MK_SHIFT, 0 |
oc2dActionModifyStart (start translation) |
WM_MBUTTONDOWN, MK_MBUTTON+MK_CONTROL, 0 |
oc2dActionModifyStart (start scaling) |
WM_LBUTTONDOWN, MK_LBUTTON+MK_CONTROL, 0 |
oc2dActionZoomStart (start graphics zooming) |
WM_LBUTTONDOWN MK_LBUTTON+MK_SHIFT, 0 |
oc2dActionZoomStart (start axis zooming) |
WM_MOUSEMOVE, MK_MBUTTON, 0 |
oc2dActionRotate |
WM_MOUSEMOVE, MK_MBUTTON + MK_SHIFT, 0 |
oc2dActionTranslate |
WM_MOUSEMOVE, MK_MBUTTON + MK_CONTROL, 0 |
oc2dActionScale |
WM_MOUSEMOVE, MK_LBUTTON + MK_CONTROL, 0 |
oc2dActionZoomUpdate |
WM_MOUSEMOVE, MK_LBUTTON + MK_SHIFT, 0 |
oc2dActionZoomUpdate |
WM_MBUTTONUP, 0, 0 |
oc2dActionModifyEnd (end rotation) |
WM_MBUTTONUP, MK_SHIFT, 0 |
oc2dActionModifyEnd (end translation) |
WM_MBUTTONUP, MK_CONTROL, 0 |
oc2dActionModifyEnd (end scaling) |
WM_LBUTTONUP, MK_CONTROL, 0 |
oc2dActionZoomEnd (end zooming) |
WM_LBUTTONUP, MK_SHIFT, 0 |
oc2dActionZoomAxisEnd (end axis zooming) |
WM_KEYDOWN, 0, 'R' |
oc2dActionReset |
WM_RBUTTONDOWN, MK_MBUTTON,0 |
oc2dActionProperties |
WM_KEYDOWN, MK_LBUTTON, VK_ESCAPE |
oc2dActionZoomCancel |