Table Of Contents

Previous topic

TreeItemId

Next topic

URLDataObject

This Page

phoenix_title UIActionSimulator

UIActionSimulator is a class used to simulate user interface actions such as a mouse click or a key press.

Common usage for this class would be to provide playback and record (aka macro recording) functionality for users, or to drive unit tests by simulating user sessions.

See the for an example of using this class.

New in version 2.9.2.


class_hierarchy Inheritance Diagram

Inheritance diagram for class UIActionSimulator

Inheritance diagram of UIActionSimulator


method_summary Methods Summary

__init__ Default constructor.
Char Press and release a key.
KeyDown Press a key.
KeyUp Release a key.
MouseClick Click a mouse button.
MouseDblClick Double-click a mouse button.
MouseDown Press a mouse button.
MouseDragDrop Perform a drag and drop operation.
MouseMove Move the mouse to the specified coordinates.
MouseUp Release a mouse button.
Text Emulate typing in the keys representing the given string.

api Class API



class UIActionSimulator(object)

UIActionSimulator is a class used to simulate user interface actions such as a mouse click or a key press.

Possible constructors:

UIActionSimulator()

Methods



__init__(self)

Default constructor.



Char(self, keycode, modifiers=MOD_NONE)

Press and release a key.

Parameters:
  • keycode (int) – Key to operate on, as an integer. It is interpreted as a KeyCode.
  • modifiers (int) – A combination of KeyModifier flags to be pressed with the given keycode.
Return type:

bool



KeyDown(self, keycode, modifiers=MOD_NONE)

Press a key.

If you are using modifiers then it needs to be paired with an identical KeyUp or the modifiers will not be released (MSW and OSX).

Parameters:
  • keycode (int) – Key to operate on, as an integer. It is interpreted as a KeyCode.
  • modifiers (int) – A combination of KeyModifier flags to be pressed with the given keycode.
Return type:

bool



KeyUp(self, keycode, modifiers=MOD_NONE)

Release a key.

Parameters:
  • keycode (int) – Key to operate on, as an integer. It is interpreted as a KeyCode.
  • modifiers (int) – A combination of KeyModifier flags to be pressed with the given keycode.
Return type:

bool



MouseClick(self, button=MOUSE_BTN_LEFT)

Click a mouse button.

Parameters:button (int) – Button to press. See UIActionSimulator.MouseDown for a list of valid constants.
Return type:bool


MouseDblClick(self, button=MOUSE_BTN_LEFT)

Double-click a mouse button.

Parameters:button (int) – Button to press. See UIActionSimulator.MouseDown for a list of valid constants.
Return type:bool


MouseDown(self, button=MOUSE_BTN_LEFT)

Press a mouse button.

Parameters:button (int) – Button to press. Valid constants are MOUSE_BTN_LEFT , MOUSE_BTN_MIDDLE , and MOUSE_BTN_RIGHT .
Return type:bool


MouseDragDrop(self, x1, y1, x2, y2, button=MOUSE_BTN_LEFT)

Perform a drag and drop operation.

Parameters:
  • x1 (long) – x start coordinate, in screen coordinates.
  • y1 (long) – y start coordinate, in screen coordinates.
  • x2 (long) – x destination coordinate, in screen coordinates.
  • y2 (long) – y destination coordinate, in screen coordinates.
  • button (int) – Button to press. See UIActionSimulator.MouseDown for a list of valid constants.
Return type:

bool



MouseMove(self, *args, **kw)

overload Overloaded Implementations:



MouseMove (self, x, y)

Move the mouse to the specified coordinates.

Parameters:
  • x (long) – x coordinate to move to, in screen coordinates.
  • y (long) – y coordinate to move to, in screen coordinates.
Return type:

bool



MouseMove (self, point)

Move the mouse to the specified coordinates.

Parameters:point (Point) – Point to move to, in screen coordinates.
Return type:bool





MouseUp(self, button=MOUSE_BTN_LEFT)

Release a mouse button.

Parameters:button (int) – Button to press. See UIActionSimulator.MouseDown for a list of valid constants.
Return type:bool


Text(self, text)

Emulate typing in the keys representing the given string.

Currently only the ASCII letters, digits and characters for the definition of numbers (i.e. characters a-z A-Z 0-9 + - 'space' ) are supported.

Parameters:text (string) – The string to type.
Return type:bool