You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ORPA-pyOpenRPA/Sources/pyOpenRPA/Robot/Mouse.py

74 lines
5.9 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

from pyautogui import *
def Click(inXInt:int=None, inYInt:int=None, inClickCountInt:int=1, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0):
"""Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её. Допускается следующая параметризация. Если не указаны inXInt и inYInt - клик производится по месту нахождения указателя мыши.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально
:param inClickCountInt: Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1
:type inClickCountInt: int, опционально
:param inIntervalSecFloat: Интервал ожидания в секундах между нажатиями, По умолчанию 0.0
:type inIntervalSecFloat: float, опционально
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опционально
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опционально
"""
click(x=inXInt, y=inYInt, clicks=inClickCountInt, interval=inIntervalSecFloat, button=inButtonStr, duration=inMoveDurationSecFloat)
def ClickDouble(inXInt:int=None, inYInt:int=None):
"""Двойное нажатие левой клавиши мыши. Данное действие аналогично вызову функции (см. ниже).
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
Click(inXInt, inYInt, inClickCountInt=2, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0)
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально
"""
doubleClick(x=inXInt, y=inYInt)
def Down(inXInt:int=None, inYInt:int=None):
"""Нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up). Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально
"""
mouseDown(x=inXInt, y=inYInt)
def Up(inXInt:int=None, inYInt:int=None):
"""Отпустить (вверх) клавишу мыши. Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально
"""
mouseUp(x=inXInt, y=inYInt)
def MoveTo(inXInt=None, inYInt=None, inMoveDurationSecFloat:float=0.0):
"""Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опционально
"""
moveTo(x=inXInt, y=inYInt, duration=inMoveDurationSecFloat)