Operator Reference

get_mbuttonT_get_mbuttonGetMbuttonGetMbuttonget_mbutton (Operator)

get_mbuttonT_get_mbuttonGetMbuttonGetMbuttonget_mbutton — Wait until a mouse button is pressed.

Signature

get_mbutton( : : WindowHandle : Row, Column, Button)

Herror T_get_mbutton(const Htuple WindowHandle, Htuple* Row, Htuple* Column, Htuple* Button)

void GetMbutton(const HTuple& WindowHandle, HTuple* Row, HTuple* Column, HTuple* Button)

void HWindow::GetMbutton(Hlong* Row, Hlong* Column, Hlong* Button) const

static void HOperatorSet.GetMbutton(HTuple windowHandle, out HTuple row, out HTuple column, out HTuple button)

void HWindow.GetMbutton(out int row, out int column, out int button)

def get_mbutton(window_handle: HHandle) -> Tuple[int, int, int]

Description

get_mbuttonget_mbuttonGetMbuttonGetMbuttonget_mbutton returns the pixel accurate image coordinates of the mouse pointer in the output window and the mouse button pressed. In addition the state of the modifier keys is returned. The following values are assigned to the individual buttons and keys:

1:

Left button,

2:

Middle button,

4:

Right button,

8:

Shift key,

16:

Ctrl key,

32:

Alt key.

The sum of the values for all pressed keys added to the value of the pressed mouse button is returned in ButtonButtonButtonbuttonbutton.

The operator waits until a mouse button is pressed in the output window. For graphics windows the coordinates RowRowRowrowrow and ColumnColumnColumncolumncolumn are expressed with consideration of the current image part (see set_partset_partSetPartSetPartset_part).

If subpixel accurate image coordinates are required, you can use the operator get_mbutton_sub_pixget_mbutton_sub_pixGetMbuttonSubPixGetMbuttonSubPixget_mbutton_sub_pix.

Attention

get_mbuttonget_mbuttonGetMbuttonGetMbuttonget_mbutton only returns if a mouse button is pressed in the window.

Execution Information

  • Multithreading type: reentrant (runs in parallel with non-exclusive operators).
  • Multithreading scope: global (may be called from any thread).
  • Processed without parallelization.

Parameters

WindowHandleWindowHandleWindowHandlewindowHandlewindow_handle (input_control)  window HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Window handle.

RowRowRowrowrow (output_control)  point.y HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Row coordinate of the mouse cursor in the image coordinate system.

ColumnColumnColumncolumncolumn (output_control)  point.x HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Column coordinate of the mouse cursor in the image coordinate system.

ButtonButtonButtonbuttonbutton (output_control)  integer HTupleintHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Mouse button(s) pressed.

Result

get_mbuttonget_mbuttonGetMbuttonGetMbuttonget_mbutton returns the value 2 ( H_MSG_TRUE) .

Possible Predecessors

open_windowopen_windowOpenWindowOpenWindowopen_window

Alternatives

get_mpositionget_mpositionGetMpositionGetMpositionget_mposition, get_mbutton_sub_pixget_mbutton_sub_pixGetMbuttonSubPixGetMbuttonSubPixget_mbutton_sub_pix, get_mposition_sub_pixget_mposition_sub_pixGetMpositionSubPixGetMpositionSubPixget_mposition_sub_pix

See also

open_windowopen_windowOpenWindowOpenWindowopen_window

Module

Foundation