#Mouse wiki done

#Keyboard wiki done
dev-linux
Ivan Maslov 2 years ago
parent bb69a1a9b1
commit ed59c4156d

@ -1,6 +1,9 @@
from keyboard import * from keyboard import *
import time import time
# Настройки модуля Keyboard
WAIT_AFTER_SEC_FLOAT = 0.4 # Время, которое ожидать после выполнения любой операции модуля Keyboard. Настройка является единой для всех участов кода, использующих модуль Keyboard. Если для некоторой функции требуется изменить данное время ожидания, то в отношении этой функции можно применить соответсвующий аргумент.
# ШЕСТНАДЦАТИРИЧНЫЙ СКАН-КОД В РУССКОЙ РАСКЛАДКЕ (НЕЗАВИСИМО ОТ ВЫБРАННОГО ЯЗЫКА НА КЛАВИАТУРЕ) # ШЕСТНАДЦАТИРИЧНЫЙ СКАН-КОД В РУССКОЙ РАСКЛАДКЕ (НЕЗАВИСИМО ОТ ВЫБРАННОГО ЯЗЫКА НА КЛАВИАТУРЕ)
# ОТОБРАЖЕНИЕ СКАН КОДОВ НА КЛАВИАТУРЕ https://snipp.ru/handbk/scan-codes # ОТОБРАЖЕНИЕ СКАН КОДОВ НА КЛАВИАТУРЕ https://snipp.ru/handbk/scan-codes
@ -161,7 +164,7 @@ KEY_HOT_7 = 0x8
KEY_HOT_8 = 0x9 KEY_HOT_8 = 0x9
KEY_HOT_9 = 0xA KEY_HOT_9 = 0xA
def Write(inTextStr:str, inDelayFloat:float=0, inRestoreStateAfterBool:bool=True, inExactBool:bool=None, inWaitAfterSecFloat:float=0.4): def Write(inTextStr:str, inDelayFloat:float=0, inRestoreStateAfterBool:bool=True, inExactBool:bool=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
""" """
Печатает текст, который был передан в переменной inTextStr (поддерживает передачу в одной строке символов разного языка). Не зависит от текущей раскладки клавиатуры! Посылает искусственные клавишные события в ОС, моделируя печать данного текста. Знаки, не доступные на клавиатуре, напечатаны как явный unicode знаки, использующие определенную для ОС функциональность, такие как alt+codepoint. Печатает текст, который был передан в переменной inTextStr (поддерживает передачу в одной строке символов разного языка). Не зависит от текущей раскладки клавиатуры! Посылает искусственные клавишные события в ОС, моделируя печать данного текста. Знаки, не доступные на клавиатуре, напечатаны как явный unicode знаки, использующие определенную для ОС функциональность, такие как alt+codepoint.
Чтобы гарантировать текстовую целостность, все в настоящее время нажатые ключи выпущены прежде текст напечатан, и модификаторы восстановлены впоследствии. Чтобы гарантировать текстовую целостность, все в настоящее время нажатые ключи выпущены прежде текст напечатан, и модификаторы восстановлены впоследствии.
@ -177,18 +180,18 @@ def Write(inTextStr:str, inDelayFloat:float=0, inRestoreStateAfterBool:bool=True
:param inTextStr: Текст, отправляемый на печать. Не зависит от текущей раскладки клавиатуры! :param inTextStr: Текст, отправляемый на печать. Не зависит от текущей раскладки клавиатуры!
:type inTextStr: str :type inTextStr: str
:param inDelayFloat: Число секунд, которое ожидать между нажатиями. По умолчанию 0 :param inDelayFloat: Число секунд, которое ожидать между нажатиями. По умолчанию 0
:type inDelayFloat: float, опционально :type inDelayFloat: float, опциональный
:param inRestoreStateAfterBool: Может использоваться, чтобы восстановить регистр нажатых ключей после того, как текст напечатан, т.е. нажимает ключи, которые были выпущены в начало. :param inRestoreStateAfterBool: Может использоваться, чтобы восстановить регистр нажатых ключей после того, как текст напечатан, т.е. нажимает ключи, которые были выпущены в начало.
:type inRestoreStateAfterBool: bool, опционально :type inRestoreStateAfterBool: bool, опциональный
:param inExactBool: Печатает все знаки как явный unicode. Необязательный параметр :param inExactBool: Печатает все знаки как явный unicode. Необязательный параметр
:type inExactBool: bool, опционально :type inExactBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
write(text=inTextStr, delay=inDelayFloat, restore_state_after=inRestoreStateAfterBool, exact=inExactBool) write(text=inTextStr, delay=inDelayFloat, restore_state_after=inRestoreStateAfterBool, exact=inExactBool)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
def HotkeyCombination(*inKeyList, inDelaySecFloat = 0.3,inWaitAfterSecFloat:float=0.4): def HotkeyCombination(*inKeyList, inDelaySecFloat = 0.3,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Получает перечень клавиш для одновременного нажатия. Между нажатиями программа ожидания время inDelaySecFloat """Получает перечень клавиш для одновременного нажатия. Между нажатиями программа ожидания время inDelaySecFloat
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ
@ -203,9 +206,9 @@ def HotkeyCombination(*inKeyList, inDelaySecFloat = 0.3,inWaitAfterSecFloat:floa
:param inKeyList: Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A :param inKeyList: Список клавиш для одновременного нажатия. Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:param inDelaySecFloat: Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3 :param inDelaySecFloat: Интервал между нажатиями. Необходим в связи с тем, что операционной системе требуется время на реакцию на нажатие клавиш, по умолчанию: 0.3
:type inDelaySecFloat: float, опционально :type inDelaySecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
for l_key_item in inKeyList: for l_key_item in inKeyList:
if l_key_item == inKeyList[-1]: if l_key_item == inKeyList[-1]:
@ -232,14 +235,14 @@ def HotkeyCtrlA_CtrlC(inWaitAfterSecFloat:float=0.4) -> None:
from pyOpenRPA.Robot import Keyboard from pyOpenRPA.Robot import Keyboard
Keyboard.HotkeyCtrlA_CtrlC() # Отправить команды: выделить все, скопировать в буфер обмена Keyboard.HotkeyCtrlA_CtrlC() # Отправить команды: выделить все, скопировать в буфер обмена
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_A) # Ctrl + a HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_A) # Ctrl + a
HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_C) # Ctrl + c HotkeyCombination(KEY_HOT_CTRL_LEFT,KEY_ENG_C) # Ctrl + c
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWaitAfterSecFloat:float=0.4) -> None: def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
""" """
Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши Имитация нажатия/отпускания любой физической клавиши. Посылает событие в операционную систему, которые выполняет нажатие и отпускание данной клавиши
@ -254,16 +257,16 @@ def Send(inKeyInt:int, inDoPressBool:bool=True, inDoReleaseBool:bool=True,inWait
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inDoPressBool: Выполнить событие нажатия клавиши, По умолчанию True :param inDoPressBool: Выполнить событие нажатия клавиши, По умолчанию True
:type inDoPressBool: bool, опционально :type inDoPressBool: bool, опциональный
:param inDoReleaseBool: Выполнить событие отпускания клавиши, По умолчанию True :param inDoReleaseBool: Выполнить событие отпускания клавиши, По умолчанию True
:type inDoReleaseBool: bool, опционально :type inDoReleaseBool: bool, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
send(hotkey=inKeyInt, do_press=inDoPressBool, do_release=inDoReleaseBool) send(hotkey=inKeyInt, do_press=inDoPressBool, do_release=inDoReleaseBool)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
def Up(inKeyInt:int, inWaitAfterSecFloat:float=0.4) -> None: def Up(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
""" """
Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет. Отпустить (поднять) клавишу. Если клавиша уже была поднята, то ничего не произойдет.
@ -277,13 +280,13 @@ def Up(inKeyInt:int, inWaitAfterSecFloat:float=0.4) -> None:
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
send(hotkey=inKeyInt, do_press=False, do_release=True) send(hotkey=inKeyInt, do_press=False, do_release=True)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
def Down(inKeyInt:int, inWaitAfterSecFloat:float=0.4) -> None: def Down(inKeyInt:int, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT) -> None:
""" """
Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет. Нажать (опустить) клавишу. Если клавиша уже была опущена, то ничего не произойдет.
@ -297,8 +300,8 @@ def Down(inKeyInt:int, inWaitAfterSecFloat:float=0.4) -> None:
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT, KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
send(hotkey=inKeyInt, do_press=True, do_release=False) send(hotkey=inKeyInt, do_press=True, do_release=False)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)
@ -320,7 +323,7 @@ def IsDown(inKeyInt:int) -> bool:
""" """
return is_pressed(inKeyInt) return is_pressed(inKeyInt)
def Wait(inKeyInt:int,inWaitAfterSecFloat:float=0.4): def Wait(inKeyInt:int,inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата. """Блокирует осуществление программы, пока данная обозначенная клавиша не будет нажата.
ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ. ОЖИДАЕТ НАЖАТИЕ СООТВЕТСВУЮЩЕЙ ФИЗИЧЕСКОЙ КЛАВИШИ ВНИМАНИЕ! НЕ ЗАВИСИТ ОТ ТЕКУЩЕЙ РАСКЛАДКИ КЛАВИАТУРЫ. ОЖИДАЕТ НАЖАТИЕ СООТВЕТСВУЮЩЕЙ ФИЗИЧЕСКОЙ КЛАВИШИ
@ -332,8 +335,8 @@ def Wait(inKeyInt:int,inWaitAfterSecFloat:float=0.4):
:param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A :param inKeyInt: Перечень клавиш см. в разделе "Коды клавиш". Пример: KEY_HOT_CTRL_LEFT,KEY_ENG_A
:type inKeyInt: int :type inKeyInt: int
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию 0.4 :param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Keyboard (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опционально :type inWaitAfterSecFloat: float, опциональный
""" """
wait(hotkey=inKeyInt) wait(hotkey=inKeyInt)
time.sleep(inWaitAfterSecFloat) time.sleep(inWaitAfterSecFloat)

@ -1,74 +1,173 @@
from pyautogui import * from pyautogui import *
import time
def Click(inXInt:int=None, inYInt:int=None, inClickCountInt:int=1, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0): WAIT_AFTER_SEC_FLOAT = 0.4 # Настройка модуля Mouse: Время, которое ожидать после выполнения любой операции модуля Mouse. Настройка является единой для всех участов кода, использующих модуль Mouse. Если для некоторой функции требуется изменить данное время ожидания, то в отношении этой функции можно применить соответсвующий аргумент.
def Click(inXInt:int=None, inYInt:int=None, inClickCountInt:int=1, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её. Допускается следующая параметризация. Если не указаны inXInt и inYInt - клик производится по месту нахождения указателя мыши. """Нажатие (вниз) кнопки мыши и затем немедленно выпуск (вверх) её. Допускается следующая параметризация. Если не указаны inXInt и inYInt - клик производится по месту нахождения указателя мыши.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана). !ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Click(100,150) #Выполнить нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось). :param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально :type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось). :param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально :type inYInt: int, опциональный
:param inClickCountInt: Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1 :param inClickCountInt: Количество нажатий (вниз и вверх) кнопкой мыши, По умолчанию 1
:type inClickCountInt: int, опционально :type inClickCountInt: int, опциональный
:param inIntervalSecFloat: Интервал ожидания в секундах между нажатиями, По умолчанию 0.0 :param inIntervalSecFloat: Интервал ожидания в секундах между нажатиями, По умолчанию 0.0
:type inIntervalSecFloat: float, опционально :type inIntervalSecFloat: float, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left' :param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опционально :type inButtonStr: str, опциональный
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение) :param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опционально :type inMoveDurationSecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
""" """
click(x=inXInt, y=inYInt, clicks=inClickCountInt, interval=inIntervalSecFloat, button=inButtonStr, duration=inMoveDurationSecFloat) click(x=inXInt, y=inYInt, clicks=inClickCountInt, interval=inIntervalSecFloat, button=inButtonStr, duration=inMoveDurationSecFloat)
time.sleep(inWaitAfterSecFloat)
def ClickDouble(inXInt:int=None, inYInt:int=None): def ClickDouble(inXInt:int=None, inYInt:int=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Двойное нажатие левой клавиши мыши. Данное действие аналогично вызову функции (см. ниже). """Двойное нажатие левой клавиши мыши. Данное действие аналогично вызову функции (см. ниже).
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана). !ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python .. code-block:: python
Click(inXInt, inYInt, inClickCountInt=2, inIntervalSecFloat:float=0.0, inButtonStr:str='left', inMoveDurationSecFloat:float=0.0)
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ClickDouble(100,150) #Выполнить двойное нажатие левой клавиши мыши на экране по координатам: X(гор) 100px, Y(вер) 150px.
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось). :param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально :type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось). :param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально :type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
""" """
doubleClick(x=inXInt, y=inYInt) doubleClick(x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)
def Down(inXInt:int=None, inYInt:int=None): def Down(inXInt:int=None, inYInt:int=None, inButtonStr:str='left', inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up). Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится. """Переместить указатель по координатам inXInt, inYInt, после чего нажать (вниз) клавишу мыши и не отпускать до выполнения соответсвующей команды (см. Up). Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана). !ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Down() #Опустить левую клавишу мыши
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось). :param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально :type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось). :param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально :type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется нажать. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
""" """
mouseDown(x=inXInt, y=inYInt) mouseDown(x=inXInt, y=inYInt, button = inButtonStr)
time.sleep(inWaitAfterSecFloat)
def Up(inXInt:int=None, inYInt:int=None): def Up(inXInt:int=None, inYInt:int=None, inButtonStr:str='left', inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Отпустить (вверх) клавишу мыши. Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится. """Отпустить (вверх) клавишу мыши. Если координаты inXInt, inYInt не переданы - нажатие происходит на тех координатах X/Y, на которых указатель мыши находится.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области. !ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области.
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.Up(inButtonStr:str='right') #Поднять правую клавишу мыши
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось). :param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально :type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось). :param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально :type inYInt: int, опциональный
:param inButtonStr: Номер кнопки, которую требуется поднять. Возможные варианты: 'left', 'middle', 'right' или 1, 2, 3. В остальных случаях инициирует исключение ValueError. По умолчанию 'left'
:type inButtonStr: str, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
""" """
mouseUp(x=inXInt, y=inYInt) mouseUp(x=inXInt, y=inYInt, button = inButtonStr)
time.sleep(inWaitAfterSecFloat)
def MoveTo(inXInt=None, inYInt=None, inMoveDurationSecFloat:float=0.0): def MoveTo(inXInt=None, inYInt=None, inMoveDurationSecFloat:float=0.0, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat. """Переместить указатель мыши на позицию inXInt, inYInt за время inMoveDurationSecFloat.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана). !ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.MoveTo(inXInt=100, inYInt=200) #Переместить указатель мыши по координатам: X(гор) 100, Y(вер) 200
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось). :param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опционально :type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось). :param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опционально :type inYInt: int, опциональный
:param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение) :param inMoveDurationSecFloat: Время перемещения указателя мыши, По умолчанию 0.0 (моментальное перемещение)
:type inMoveDurationSecFloat: float, опционально :type inMoveDurationSecFloat: float, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
""" """
moveTo(x=inXInt, y=inYInt, duration=inMoveDurationSecFloat) moveTo(x=inXInt, y=inYInt, duration=inMoveDurationSecFloat)
time.sleep(inWaitAfterSecFloat)
def ScrollVertical(inScrollClickCountInt, inXInt=None, inYInt=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""Переместить указатель мыши на позицию inXInt, inYInt и выполнить вертикальную прокрутку (скроллинг) колесом мыши на количество щелчков inScrollClickCountInt.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ScrollVertical(100, inXInt=100, inYInt=200) #Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200
Mouse.ScrollVertical(-100) #Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.
:param inScrollClickCountInt: Количество щелчок колеса мыши, которое требуется !вертикально! прокрутить. Аргумент может принимать как положительное (прокрутка вниз), так и отрицательное (прокрутка вверх) значения
:type inScrollClickCountInt: int, обязательный
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
vscroll(inScrollClickCountInt, x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)
def ScrollHorizontal(inScrollClickCountInt, inXInt=None, inYInt=None, inWaitAfterSecFloat:float=WAIT_AFTER_SEC_FLOAT):
"""!ТОЛЬКО ДЛЯ LINUX! Переместить указатель мыши на позицию inXInt, inYInt и выполнить горизонтальную прокрутку (скроллинг) виртуальным колесом мыши на количество щелчков inScrollClickCountInt.
!ВНИМАНИЕ! Отсчет координат inXInt, inYInt начинается с левого верхнего края рабочей области (экрана).
.. code-block:: python
# Mouse: Взаимодействие с мышью
from pyOpenRPA.Robot import Mouse
Mouse.ScrollHorizontal(100, inXInt=100, inYInt=200) #Крутить колесо мыши вниз на 100 кликов по координатам: X(гор) 100, Y(вер) 200
Mouse.ScrollHorizontal(-100) #Крутить колесо мыши вверх на 100 кликов по текущим координатам указателя мыши.
:param inScrollClickCountInt: Количество щелчок колеса мыши, которое требуется !горизонтально! прокрутить. Аргумент может принимать как положительное (прокрутка вправо), так и отрицательное (прокрутка влево) значения
:type inScrollClickCountInt: int, обязательный
:param inXInt: Целевая позиция указателя мыши по оси X (горизонтальная ось).
:type inXInt: int, опциональный
:param inYInt: Целевая позиция указателя мыши по оси Y (вертикальная ось).
:type inYInt: int, опциональный
:param inWaitAfterSecFloat: Количество секунд, которые ожидать после выполнения операции. По умолчанию установлено в настройках модуля Mouse (базовое значение 0.4)
:type inWaitAfterSecFloat: float, опциональный
"""
hscroll(inScrollClickCountInt, x=inXInt, y=inYInt)
time.sleep(inWaitAfterSecFloat)

@ -10,6 +10,11 @@ AGT - AGENT
- - def WebRequestResponseSend(inResponeStr, inRequest=None, inContentTypeStr: str = None, inHeadersDict: dict = None): - - def WebRequestResponseSend(inResponeStr, inRequest=None, inContentTypeStr: str = None, inHeadersDict: dict = None):
- ROBOT - ROBOT
- - Keyboard, add hotkey codes (up, down, ctr, alt, etc) - - Keyboard, add hotkey codes (up, down, ctr, alt, etc)
- - Keyboard, consolidated defs
- - Keyboard, В каждую функцию добавил обработку пост ожидания, если это необходимо для стабилизации робота
- - Mouse, Дополнил примеры в описание каждой функции
- - Mouse, В каждую функцию добавил обработку пост ожидания, если это необходимо для стабилизации робота
[1.2.12] [1.2.12]
2022_Q2 2022_Q2

Loading…
Cancel
Save