Что нового

MouseClickDrag при нажатой комбинации клавиш

vitaliy4us

Новичок
Сообщения
158
Репутация
4
Для распознавания текста в окне, с которым работает скрипт, используется программа Kleptomania. Комбинация клавиш для начала выделения с помощью этой программы установлена CTRL+SHIFT. После этого, не отпуская клавиш, с помощью нажатой левой кнопки мыши производится выделение участка окна, с которого производится копирование в буфер обмена. Идея такая: выполнить Send("{LCTRL}{LSHIFT}"), а затем не отпуская этих клавиш с помощью MouseClickDrag выделить необходимую область. При нажатии CTRL+SHIFT вручную все получается, но из скрипта - нет. Пробовал устанавливать AutoItSetOption ("SendKeyDownDelay", 2000), чтобы заморозить нажатие комбинации клавиш (в приведенном случае на 2 сек.), ничего не получается. Да и вообще, при нажатии клавиш CTRL+SHIFT вручную, указатель мыши меняет вид, показывая готовность к выделению, а при отсылке из скрипта ничего не меняется. Как быть?!
 

agikon

Знающий
Сообщения
789
Репутация
17
само по себе ("SendKeyDownDelay", 2000) не всегда работает так как надо.
у меня была похожая ситуациия.
хотел чтобы посыласось одновременно две клавиши.
мне посоветовали сделать так, вот пример нажатия контрола и пробела 3 секунды.
может и вам поможет.
Код:
$init  = TimerInit()
Do
    Send('{ctrl down}{SPACE down}')
Until TimerDiff($init) > 3000
 
Верх