1

Тема: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

Здравствуйте!

Подскажите пожалуйста, как сделать чтобы скрипт AHK срабатывал если я буду продолжать жать на клавиши "Shift+R" больше 0.5 сек. А если я ткну на 0.1 сек, скрипт не срабатывал?

Кажется это решается через pressDuration, но как он работает я не смог найти информации ни на сайте, ни в Гугле.

Спасибо!

2

Re: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

PressDuration - не из той оперы.
Вам нужно отловить нажатие "Shift+R", затем проверить текущее время (лучше всего через A_TickCount). Потом отловить отпускание "Shift+R" и вновь проверить текущее время. И, в зависимости от прошедшего времени, совершить или не совершить действие.

3 (изменено: Lolykroly, 2021-03-21 13:10:10)

Re: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

Предлагаю http://forum.script-coding.com/viewtopi … 25#p146825

4

Re: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

Lolykroly, какое отношение имеет Ваша тема в коммерческом разделе к вопросу Dancerget?

5

Re: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

ypppu пишет:

какое отношение имеет Ваша тема в коммерческом

Я не навязываю, просто предложил.

6

Re: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

Так это коммерческое предложение. Понятно.

7 (изменено: Dancerget, 2021-03-23 13:17:44)

Re: AHK: Срабатывание скрипта только если продолжаю жать клавиши.

Оказывается всё гениальное просто!
Решил проблему следующим способом:

loop
{KeyWait, sc13, D                          ;ждёт нажатия клавиши "R"
sleep, 500                                      ; ждёт 0.5 сек
While GetKeyState("sc13", "P")        ;проверяет статус, нажата ли до сих пор "R", если ДА, то скрипт продолжает выполнение
{GetKeyState, state, sc2A               ;проверяет нажата ли клавиша "Shift"
If state = D                                    ;если "Shift" нажата, делает действие, в данном случае пишет/отправляет "Get work"
{
send, Get work
}
}
}
Return

Думаю работа приведённой (Shift+R) и подобных сочетаний клавиш в AHK из этой темы полезное и пригодится новичкам, как я.
А то вдруг таких тем нету, или я плохо ищу
Спасибо всем за участие!
Пользуйтесь, бесплатно!